Skip to content

Associate Issues tab only with internal issues tracker

Jarka Košanová requested to merge 33097-issue-tracker into master

What does this MR do?

Issues tab association

This is the part that was requested in the related issue.

  • When "Issues" feature is enabled on project settings the "Issues" link is visible in the project menu
    • When a user clicks "Issues" link the GitLab issues tracker is displayed no matter if any external service is configured or not
  • When "Issues" feature is disabled on project settings no "Issues" link is displayed (even when an external issues tracker is active)
  • When a user tries to access Issues page, 404 page is rendered

Support both internal and external issues trackers (additional work needed)

Because we now support both external and internal issues tracker we need to change the parts of code where we check if external issue tracker is enabled. It is quite simple for the most of places and simple replacement like project.issues_enabled? instead of issues.default_issue_tracker is enough.

The most complex part is references extraction. First we try to extract internal issues (existence check included). If an internal issue is not found we extract reference as an external issue in case an external issue tracker is enabled.

Are there points in the code the reviewer needs to double check?

Double check of references extractions would be appreciated

Why was this MR needed?

The internal Issues tracker should be independent from external issues tracker services. We want users to use our issues tracker and therefore they should be able to access it even when they configured external services.

Screenshots (if relevant)

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Closes #33097 (closed)

Edited by Jarka Košanová

Merge request reports