Move some project routes under - scope
Affected routes are: * autocomplete_sources * project_members * deploy_keys * deploy_tokens Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
28f1963943
commit
e6442ddef7
2 changed files with 53 additions and 40 deletions
|
@ -26,6 +26,8 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
module: :projects,
|
||||
as: :project) do
|
||||
|
||||
# Begin of the /-/ scope.
|
||||
# Use this scope for all new project routes.
|
||||
scope '-' do
|
||||
get 'archive/*id', constraints: { format: Gitlab::PathRegex.archive_formats_regex, id: /.+?/ }, to: 'repositories#archive', as: 'archive'
|
||||
|
||||
|
@ -82,19 +84,48 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
post :cleanup
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
resources :autocomplete_sources, only: [] do
|
||||
collection do
|
||||
get 'members'
|
||||
get 'issues'
|
||||
get 'merge_requests'
|
||||
get 'labels'
|
||||
get 'milestones'
|
||||
get 'commands'
|
||||
get 'snippets'
|
||||
resources :autocomplete_sources, only: [] do
|
||||
collection do
|
||||
get 'members'
|
||||
get 'issues'
|
||||
get 'merge_requests'
|
||||
get 'labels'
|
||||
get 'milestones'
|
||||
get 'commands'
|
||||
get 'snippets'
|
||||
end
|
||||
end
|
||||
|
||||
resources :project_members, except: [:show, :new, :edit], constraints: { id: %r{[a-zA-Z./0-9_\-#%+]+} }, concerns: :access_requestable do
|
||||
collection do
|
||||
delete :leave
|
||||
|
||||
# Used for import team
|
||||
# from another project
|
||||
get :import
|
||||
post :apply_import
|
||||
end
|
||||
|
||||
member do
|
||||
post :resend_invite
|
||||
end
|
||||
end
|
||||
|
||||
resources :deploy_keys, constraints: { id: /\d+/ }, only: [:index, :new, :create, :edit, :update] do
|
||||
member do
|
||||
put :enable
|
||||
put :disable
|
||||
end
|
||||
end
|
||||
|
||||
resources :deploy_tokens, constraints: { id: /\d+/ }, only: [] do
|
||||
member do
|
||||
put :revoke
|
||||
end
|
||||
end
|
||||
end
|
||||
# End of the /-/ scope.
|
||||
|
||||
#
|
||||
# Templates
|
||||
|
@ -142,19 +173,6 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
end
|
||||
end
|
||||
|
||||
resources :deploy_keys, constraints: { id: /\d+/ }, only: [:index, :new, :create, :edit, :update] do
|
||||
member do
|
||||
put :enable
|
||||
put :disable
|
||||
end
|
||||
end
|
||||
|
||||
resources :deploy_tokens, constraints: { id: /\d+/ }, only: [] do
|
||||
member do
|
||||
put :revoke
|
||||
end
|
||||
end
|
||||
|
||||
resources :releases, only: [:index]
|
||||
resources :forks, only: [:index, :new, :create]
|
||||
resource :import, only: [:new, :create, :show]
|
||||
|
@ -396,21 +414,6 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
end
|
||||
end
|
||||
|
||||
resources :project_members, except: [:show, :new, :edit], constraints: { id: %r{[a-zA-Z./0-9_\-#%+]+} }, concerns: :access_requestable do
|
||||
collection do
|
||||
delete :leave
|
||||
|
||||
# Used for import team
|
||||
# from another project
|
||||
get :import
|
||||
post :apply_import
|
||||
end
|
||||
|
||||
member do
|
||||
post :resend_invite
|
||||
end
|
||||
end
|
||||
|
||||
resources :group_links, only: [:index, :create, :update, :destroy], constraints: { id: /\d+/ }
|
||||
|
||||
resources :notes, only: [:create, :destroy, :update], concerns: :awardable, constraints: { id: /\d+/ } do
|
||||
|
@ -505,7 +508,9 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
|
|||
constraints: { project_id: Gitlab::PathRegex.project_route_regex },
|
||||
module: :projects,
|
||||
as: :project) do
|
||||
Gitlab::Routing.redirect_legacy_paths(self, :settings, :branches, :tags, :network, :graphs)
|
||||
Gitlab::Routing.redirect_legacy_paths(self, :settings, :branches, :tags,
|
||||
:network, :graphs, :autocomplete_sources,
|
||||
:project_members, :deploy_keys, :deploy_tokens)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -138,9 +138,11 @@ describe 'project routing' do
|
|||
describe Projects::AutocompleteSourcesController, 'routing' do
|
||||
[:members, :issues, :merge_requests, :labels, :milestones, :commands, :snippets].each do |action|
|
||||
it "to ##{action}" do
|
||||
expect(get("/gitlab/gitlabhq/autocomplete_sources/#{action}")).to route_to("projects/autocomplete_sources##{action}", namespace_id: 'gitlab', project_id: 'gitlabhq')
|
||||
expect(get("/gitlab/gitlabhq/-/autocomplete_sources/#{action}")).to route_to("projects/autocomplete_sources##{action}", namespace_id: 'gitlab', project_id: 'gitlabhq')
|
||||
end
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/autocomplete_sources/labels", "/gitlab/gitlabhq/-/autocomplete_sources/labels"
|
||||
end
|
||||
|
||||
# pages_project_wikis GET /:project_id/wikis/pages(.:format) projects/wikis#pages
|
||||
|
@ -239,7 +241,10 @@ describe 'project routing' do
|
|||
it_behaves_like 'RESTful project resources' do
|
||||
let(:actions) { [:index, :new, :create, :edit, :update] }
|
||||
let(:controller) { 'deploy_keys' }
|
||||
let(:controller_path) { '/-/deploy_keys' }
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/deploy_keys", "/gitlab/gitlabhq/-/deploy_keys"
|
||||
end
|
||||
|
||||
# project_protected_branches GET /:project_id/protected_branches(.:format) protected_branches#index
|
||||
|
@ -447,7 +452,10 @@ describe 'project routing' do
|
|||
it_behaves_like 'RESTful project resources' do
|
||||
let(:actions) { [:index, :create, :update, :destroy] }
|
||||
let(:controller) { 'project_members' }
|
||||
let(:controller_path) { '/-/project_members' }
|
||||
end
|
||||
|
||||
it_behaves_like 'redirecting a legacy project path', "/gitlab/gitlabhq/project_members", "/gitlab/gitlabhq/-/project_members"
|
||||
end
|
||||
|
||||
# project_milestones GET /:project_id/milestones(.:format) milestones#index
|
||||
|
|
Loading…
Reference in a new issue