From ae4caf669d35e03fc21d9d53582466602a487177 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 27 Jan 2020 16:00:57 +0200 Subject: [PATCH] Copy issues routing under - scope Keep original routing as default one Signed-off-by: Dmitriy Zaporozhets --- .../dz-scope-project-issues-routing.yml | 5 ++++ config/routes/issues.rb | 22 ++++++++++++++++ config/routes/project.rb | 26 ++++++------------- ee/config/routes/issues.rb | 16 ++++++++++++ ee/config/routes/project.rb | 15 ----------- 5 files changed, 51 insertions(+), 33 deletions(-) create mode 100644 changelogs/unreleased/dz-scope-project-issues-routing.yml create mode 100644 config/routes/issues.rb create mode 100644 ee/config/routes/issues.rb diff --git a/changelogs/unreleased/dz-scope-project-issues-routing.yml b/changelogs/unreleased/dz-scope-project-issues-routing.yml new file mode 100644 index 00000000000000..e6fbfae6be379a --- /dev/null +++ b/changelogs/unreleased/dz-scope-project-issues-routing.yml @@ -0,0 +1,5 @@ +--- +title: Copy issues routing under - scope +merge_request: 23779 +author: +type: changed diff --git a/config/routes/issues.rb b/config/routes/issues.rb new file mode 100644 index 00000000000000..9ac69975690333 --- /dev/null +++ b/config/routes/issues.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +get :issues, to: 'issues#calendar', constraints: lambda { |req| req.format == :ics } + +resources :issues, concerns: :awardable, constraints: { id: /\d+/ } do + member do + post :toggle_subscription + post :mark_as_spam + post :move + put :reorder + get :related_branches + get :can_create_branch + get :realtime_changes + post :create_merge_request + get :discussions, format: :json + end + + collection do + post :bulk_update + post :import_csv + end +end diff --git a/config/routes/project.rb b/config/routes/project.rb index df505f96c9dccc..623b64b56e2a3a 100644 --- a/config/routes/project.rb +++ b/config/routes/project.rb @@ -409,25 +409,15 @@ end end - get :issues, to: 'issues#calendar', constraints: lambda { |req| req.format == :ics } - - resources :issues, concerns: :awardable, constraints: { id: /\d+/ } do - member do - post :toggle_subscription - post :mark_as_spam - post :move - put :reorder - get :related_branches - get :can_create_branch - get :realtime_changes - post :create_merge_request - get :discussions, format: :json - end + # Unscoped route. It will be replaced with redirect to /-/issues/ + # Issue https://gitlab.com/gitlab-org/gitlab/issues/118849 + draw :issues - collection do - post :bulk_update - post :import_csv - end + # To ensure an old unscoped routing is used for the UI we need to + # add prefix 'as' to the scope routing and place it below original routing. + # Issue https://gitlab.com/gitlab-org/gitlab/issues/118849 + scope '-', as: 'scoped' do + draw :issues end resources :notes, only: [:create, :destroy, :update], concerns: :awardable, constraints: { id: /\d+/ } do diff --git a/ee/config/routes/issues.rb b/ee/config/routes/issues.rb new file mode 100644 index 00000000000000..fee7303e1052bf --- /dev/null +++ b/ee/config/routes/issues.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +resources :issues, only: [], constraints: { id: /\d+/ } do + member do + get '/descriptions/:version_id/diff', action: :description_diff, as: :description_diff + delete '/descriptions/:version_id', action: :delete_description_version, as: :delete_description_version + get '/designs(/*vueroute)', to: 'issues#designs', as: :designs, format: false + end + + collection do + post :export_csv + get :service_desk + end + + resources :issue_links, only: [:index, :create, :destroy], as: 'links', path: 'links' +end diff --git a/ee/config/routes/project.rb b/ee/config/routes/project.rb index 4bcd2de177ad93..84af684e0dcbf2 100644 --- a/ee/config/routes/project.rb +++ b/ee/config/routes/project.rb @@ -127,21 +127,6 @@ end end - resources :issues, only: [], constraints: { id: /\d+/ } do - member do - get '/descriptions/:version_id/diff', action: :description_diff, as: :description_diff - delete '/descriptions/:version_id', action: :delete_description_version, as: :delete_description_version - get '/designs(/*vueroute)', to: 'issues#designs', as: :designs, format: false - end - - collection do - post :export_csv - get :service_desk - end - - resources :issue_links, only: [:index, :create, :destroy], as: 'links', path: 'links' - end - get '/service_desk' => 'service_desk#show', as: :service_desk put '/service_desk' => 'service_desk#update', as: :service_desk_refresh -- GitLab