diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-24 12:07:44 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-12-24 12:07:44 +0300 |
commit | 6593f1f627938f22090dec5221476772d3ed581d (patch) | |
tree | ac5b9adf00f24f1d7cbc59c7d78f7c4fd06a0001 /config | |
parent | 2f369bd95866b7f623387ce2b6acf646df3d5222 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'config')
-rw-r--r-- | config/routes/project.rb | 10 | ||||
-rw-r--r-- | config/routes/repository.rb | 26 | ||||
-rw-r--r-- | config/routes/repository_scoped.rb | 34 |
3 files changed, 43 insertions, 27 deletions
diff --git a/config/routes/project.rb b/config/routes/project.rb index 0cc8e83de2c..ddd1693ef02 100644 --- a/config/routes/project.rb +++ b/config/routes/project.rb @@ -274,8 +274,9 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do end end - # The wiki routing contains wildcard characters so + # The wiki and repository routing contains wildcard characters so # its preferable to keep it below all other project routes + draw :repository_scoped draw :wiki end # End of the /-/ scope. @@ -481,6 +482,13 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do # its preferable to keep it below all other project routes draw :repository + # 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 :repository + end + # All new routes should go under /-/ scope. # Look for scope '-' at the top of the file. # rubocop: enable Cop/PutProjectRoutesUnderScope diff --git a/config/routes/repository.rb b/config/routes/repository.rb index 4815575ba9f..d4805b67a5c 100644 --- a/config/routes/repository.rb +++ b/config/routes/repository.rb @@ -39,32 +39,6 @@ scope format: false do end end - scope path: '-', constraints: { id: Gitlab::PathRegex.git_reference_regex } do - resources :network, only: [:show] - - resources :graphs, only: [:show] do - member do - get :charts - get :commits - get :ci - get :languages - end - end - - get '/branches/:state', to: 'branches#index', as: :branches_filtered, constraints: { state: /active|stale|all/ } - resources :branches, only: [:index, :new, :create, :destroy] do - get :diverging_commit_counts, on: :collection - end - - delete :merged_branches, controller: 'branches', action: :destroy_all_merged - resources :tags, only: [:index, :show, :new, :create, :destroy] do - resource :release, controller: 'tags/releases', only: [:edit, :update] - end - - resources :protected_branches, only: [:index, :show, :create, :update, :destroy, :patch], constraints: { id: Gitlab::PathRegex.git_reference_regex } - resources :protected_tags, only: [:index, :show, :create, :update, :destroy] - end - scope constraints: { id: /[^\0]+/ } do scope controller: :blob do get '/new/*id', action: :new, as: :new_blob diff --git a/config/routes/repository_scoped.rb b/config/routes/repository_scoped.rb new file mode 100644 index 00000000000..c6343039d62 --- /dev/null +++ b/config/routes/repository_scoped.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: true + +# All routing related to repository browsing +# that is already under /-/ scope only + +# Don't use format parameter as file extension (old 3.0.x behavior) +# See http://guides.rubyonrails.org/routing.html#route-globbing-and-wildcard-segments +scope format: false do + scope constraints: { id: Gitlab::PathRegex.git_reference_regex } do + resources :network, only: [:show] + + resources :graphs, only: [:show] do + member do + get :charts + get :commits + get :ci + get :languages + end + end + + get '/branches/:state', to: 'branches#index', as: :branches_filtered, constraints: { state: /active|stale|all/ } + resources :branches, only: [:index, :new, :create, :destroy] do + get :diverging_commit_counts, on: :collection + end + + delete :merged_branches, controller: 'branches', action: :destroy_all_merged + resources :tags, only: [:index, :show, :new, :create, :destroy] do + resource :release, controller: 'tags/releases', only: [:edit, :update] + end + + resources :protected_branches, only: [:index, :show, :create, :update, :destroy, :patch], constraints: { id: Gitlab::PathRegex.git_reference_regex } + resources :protected_tags, only: [:index, :show, :create, :update, :destroy] + end +end |