summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <robert@gitlab.com>2016-08-26 00:11:30 +0000
committerRuben Davila <rdavila84@gmail.com>2016-08-26 11:32:42 -0500
commitbf84a1cbbe9115ef412a1454c31c1520354c816e (patch)
tree5e8a2664b9bf199a91b8aebe2f48da2aff2ffcbd
parentef5758469698d82c181c6480d160aa5e2475728a (diff)
downloadgitlab-ce-bf84a1cbbe9115ef412a1454c31c1520354c816e.tar.gz
Merge branch 'fix-external-issue-tracker-link' into 'master'
Fix external issue tracker "Issues" link leading to 404s ## What does this MR do? This MR fixes the redirection to the wrong URL when using an external issue tracker, such as JIRA or Redmine. a70431f874 modified the behavior to link to the external issue tracker issues URL instead of the project path URL. This restores the previous behavior. ## Why was this MR needed? The issues URL often has `:id` associated with it for linking mentioned issues. For external issue trackers, the project page is the intended target. ## What are the relevant issue numbers? Closes #21252 Related to #21402 See merge request !6006
-rw-r--r--CHANGELOG5
-rw-r--r--app/controllers/projects/issues_controller.rb2
-rw-r--r--spec/controllers/projects/issues_controller_spec.rb4
3 files changed, 8 insertions, 3 deletions
diff --git a/CHANGELOG b/CHANGELOG
index ec3ce2a6055..0749f451967 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,11 @@
Please view this file on the master branch, on stable branches it's out of date.
v 8.11.3 (unreleased)
+ - Allow system info page to handle case where info is unavailable
+ - Label list shows all issues (opened or closed) with that label
+ - Don't show resolve conflicts link before MR status is updated
+ - Don't prevent viewing the MR when git refs for conflicts can't be found on disk
+ - Fix external issue tracker "Issues" link leading to 404s
v 8.11.2
- Show "Create Merge Request" widget for push events to fork projects on the source project. !5978
diff --git a/app/controllers/projects/issues_controller.rb b/app/controllers/projects/issues_controller.rb
index 639cf4c0ef2..c5197720c8e 100644
--- a/app/controllers/projects/issues_controller.rb
+++ b/app/controllers/projects/issues_controller.rb
@@ -208,7 +208,7 @@ class Projects::IssuesController < Projects::ApplicationController
if action_name == 'new'
redirect_to external.new_issue_path
else
- redirect_to external.issues_url
+ redirect_to external.project_path
end
end
diff --git a/spec/controllers/projects/issues_controller_spec.rb b/spec/controllers/projects/issues_controller_spec.rb
index 0836b71056c..16929767ddf 100644
--- a/spec/controllers/projects/issues_controller_spec.rb
+++ b/spec/controllers/projects/issues_controller_spec.rb
@@ -8,13 +8,13 @@ describe Projects::IssuesController do
describe "GET #index" do
context 'external issue tracker' do
it 'redirects to the external issue tracker' do
- external = double(issues_url: 'https://example.com/issues')
+ external = double(project_path: 'https://example.com/project')
allow(project).to receive(:external_issue_tracker).and_return(external)
controller.instance_variable_set(:@project, project)
get :index, namespace_id: project.namespace.path, project_id: project
- expect(response).to redirect_to('https://example.com/issues')
+ expect(response).to redirect_to('https://example.com/project')
end
end