summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2019-06-19 19:14:41 -0500
committerRobert Speicher <rspeicher@gmail.com>2019-06-20 10:07:49 -0500
commit5b9f6c2a935eb53b49220bf2444891d96581b5d6 (patch)
tree48c8027f12e92938f1ed74bc4fcf0a1010c68ffa
parent46ba31b9dab338211db2e6b8e082a36b3c117b9d (diff)
downloadgitlab-ce-rs-ee-only-routes.tar.gz
Include all EE-only routes in CErs-ee-only-routes
This is a direct copy of `config/routes.rb` and `config/routes/*.rb` from EE.
-rw-r--r--config/routes.rb17
-rw-r--r--config/routes/api.rb4
-rw-r--r--config/routes/profile.rb10
-rw-r--r--config/routes/project.rb78
-rw-r--r--config/routes/repository.rb2
-rw-r--r--config/routes/user.rb12
6 files changed, 116 insertions, 7 deletions
diff --git a/config/routes.rb b/config/routes.rb
index cb90a0134c4..51f41c4d4fa 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -27,10 +27,13 @@ Rails.application.routes.draw do
authorizations: 'oauth/authorizations'
end
- # This is here so we can "reserve" the path for the Jira integration in GitLab EE
- # Having a non-existent controller here does not affect the scope in any way since all possible routes
- # get a 404 proc returned. It is written in this way to minimize merge conflicts with EE
+ # This prefixless path is required because Jira gets confused if we set it up with a path
+ # More information: https://gitlab.com/gitlab-org/gitlab-ee/issues/6752
scope path: '/login/oauth', controller: 'oauth/jira/authorizations', as: :oauth_jira do
+ get :authorize, action: :new
+ get :callback
+ post :access_token
+ # This helps minimize merge conflicts with CE for this scope block
match '*all', via: [:get, :post], to: proc { [404, {}, ['']] }
end
@@ -43,6 +46,7 @@ Rails.application.routes.draw do
get '/autocomplete/users/:id' => 'autocomplete#user'
get '/autocomplete/projects' => 'autocomplete#projects'
get '/autocomplete/award_emojis' => 'autocomplete#award_emojis'
+ get '/autocomplete/project_groups' => 'autocomplete#project_groups'
get '/autocomplete/merge_request_target_branches' => 'autocomplete#merge_request_target_branches'
# Search
@@ -73,6 +77,9 @@ Rails.application.routes.draw do
end
resources :issues, module: :boards, only: [:index, :update]
+
+ resources :users, module: :boards, only: [:index]
+ resources :milestones, module: :boards, only: [:index]
end
get 'acme-challenge/' => 'acme_challenges#show'
@@ -85,6 +92,8 @@ Rails.application.routes.draw do
draw :operations
draw :instance_statistics
+ draw :smartcard
+ draw :jira_connect
if ENV['GITLAB_ENABLE_CHAOS_ENDPOINTS']
get '/chaos/leakmem' => 'chaos#leakmem'
@@ -102,6 +111,8 @@ Rails.application.routes.draw do
end
member do
+ get :metrics, format: :json
+
scope :applications do
post '/:application', to: 'clusters/applications#create', as: :install_applications
patch '/:application', to: 'clusters/applications#update', as: :update_applications
diff --git a/config/routes/api.rb b/config/routes/api.rb
index 3719b7d3a1e..3ba9176d943 100644
--- a/config/routes/api.rb
+++ b/config/routes/api.rb
@@ -3,5 +3,5 @@ constraints(::Constraints::FeatureConstrainer.new(:graphql, default_enabled: tru
mount GraphiQL::Rails::Engine, at: '/-/graphql-explorer', graphql_path: '/api/graphql'
end
-API::API.logger Rails.logger
-mount API::API => '/'
+::API::API.logger Rails.logger
+mount ::API::API => '/'
diff --git a/config/routes/profile.rb b/config/routes/profile.rb
index 0e213b0b989..13b77ceb114 100644
--- a/config/routes/profile.rb
+++ b/config/routes/profile.rb
@@ -40,6 +40,13 @@ resource :profile, only: [:show, :update] do
put :resend_confirmation_instructions
end
end
+
+ resource :slack, only: [:edit] do
+ member do
+ get :slack_link
+ end
+ end
+
resources :chat_names, only: [:index, :new, :create, :destroy] do
collection do
delete :deny
@@ -63,5 +70,8 @@ resource :profile, only: [:show, :update] do
end
resources :u2f_registrations, only: [:destroy]
+
+ resources :pipeline_quota, only: [:index]
+ resources :billings, only: [:index]
end
end
diff --git a/config/routes/project.rb b/config/routes/project.rb
index a1e769f6ca3..df84d141a3a 100644
--- a/config/routes/project.rb
+++ b/config/routes/project.rb
@@ -79,12 +79,18 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
resource :operations, only: [:show, :update]
resource :integrations, only: [:show]
+ resource :slack, only: [:destroy, :edit, :update] do
+ get :slack_auth
+ end
+
resource :repository, only: [:show], controller: :repository do
post :create_deploy_token, path: 'deploy_token/create'
post :cleanup
end
end
+ resources :feature_flags
+
resources :autocomplete_sources, only: [] do
collection do
get 'members'
@@ -199,9 +205,14 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
resource :mattermost, only: [:new, :create]
namespace :prometheus do
- resources :metrics, constraints: { id: %r{[^\/]+} }, only: [] do
+ resources :metrics, constraints: { id: %r{[^\/]+} }, only: [:index, :new, :create, :edit, :update, :destroy] do
+ post :validate_query, on: :collection
get :active_common, on: :collection
end
+
+ resources :alerts, constraints: { id: /\d+/ }, only: [:index, :create, :show, :update, :destroy] do
+ post :notify, on: :collection
+ end
end
resources :merge_requests, concerns: :awardable, except: [:new, :create], constraints: { id: /\d+/ } do
@@ -212,6 +223,13 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
get :pipeline_status
get :ci_environments_status
post :toggle_subscription
+
+ get :approvals
+ post :approvals, action: :approve
+ delete :approvals, action: :unapprove
+
+ post :rebase
+
post :remove_wip
post :assign_related_issues
get :discussions, format: :json
@@ -244,6 +262,19 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
post :bulk_update
end
+ resources :approvers, only: :destroy
+ delete 'approvers', to: 'approvers#destroy_via_user_id', as: :approver_via_user_id
+ resources :approver_groups, only: :destroy
+
+ scope module: :merge_requests do
+ resources :drafts, only: [:index, :update, :create, :destroy] do
+ collection do
+ post :publish
+ delete :discard
+ end
+ end
+ end
+
resources :discussions, only: [:show], constraints: { id: /\h{40}/ } do
member do
post :resolve
@@ -274,6 +305,15 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ resources :path_locks, only: [:index, :destroy] do
+ collection do
+ post :toggle
+ end
+ end
+
+ get '/service_desk' => 'service_desk#show', as: :service_desk
+ put '/service_desk' => 'service_desk#update', as: :service_desk_refresh
+
resource :variables, only: [:show, :update]
resources :triggers, only: [:index, :create, :edit, :update, :destroy] do
@@ -289,6 +329,8 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ resources :push_rules, constraints: { id: /\d+/ }, only: [:update]
+
resources :pipelines, only: [:index, :new, :create, :show] do
collection do
resource :pipelines_settings, path: 'settings', only: [:show, :update]
@@ -303,6 +345,14 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
get :builds
get :failures
get :status
+ get :security
+ get :licenses
+ end
+
+ member do
+ resources :stages, only: [], param: :name do
+ post :play_manual
+ end
end
member do
@@ -331,6 +381,8 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
get '/terminal.ws/authorize', to: 'environments#terminal_websocket_authorize', constraints: { format: nil }
get '/prometheus/api/v1/*proxy_path', to: 'environments/prometheus_api#proxy', as: :prometheus_api
+
+ get :logs
end
collection do
@@ -347,6 +399,12 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ resources :protected_environments, only: [:create, :update, :destroy], constraints: { id: /\d+/ } do
+ collection do
+ get 'search'
+ end
+ end
+
resource :cycle_analytics, only: [:show]
namespace :cycle_analytics do
@@ -399,6 +457,12 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ namespace :security do
+ resource :dashboard, only: [:show], controller: :dashboard
+ end
+
+ resources :vulnerability_feedback, only: [:index, :create, :update, :destroy], constraints: { id: /\d+/ }
+
get :issues, to: 'issues#calendar', constraints: lambda { |req| req.format == :ics }
resources :issues, concerns: :awardable, constraints: { id: /\d+/ } do
@@ -416,7 +480,12 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
collection do
post :bulk_update
post :import_csv
+
+ post :export_csv
+ get :service_desk
end
+
+ resources :issue_links, only: [:index, :create, :destroy], as: 'links', path: 'links'
end
resources :notes, only: [:create, :destroy, :update], concerns: :awardable, constraints: { id: /\d+/ } do
@@ -450,6 +519,9 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ resources :approvers, only: :destroy
+ resources :approver_groups, only: :destroy
+
resources :runner_projects, only: [:create, :destroy]
resources :badges, only: [:index] do
collection do
@@ -464,6 +536,8 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
end
end
+ resources :audit_events, only: [:index]
+
resources :error_tracking, only: [:index], controller: :error_tracking do
collection do
post :list_projects
@@ -474,6 +548,8 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
# its preferable to keep it below all other project routes
draw :wiki
draw :repository
+
+ resources :managed_licenses, only: [:index, :show, :new, :create, :edit, :update, :destroy]
end
resources(:projects,
diff --git a/config/routes/repository.rb b/config/routes/repository.rb
index b96315bfe8b..1ea0ae72614 100644
--- a/config/routes/repository.rb
+++ b/config/routes/repository.rb
@@ -58,7 +58,7 @@ scope format: false do
resource :release, controller: 'tags/releases', only: [:edit, :update]
end
- resources :protected_branches, only: [:index, :show, :create, :update, :destroy]
+ 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
diff --git a/config/routes/user.rb b/config/routes/user.rb
index e0ae264e2c0..d0fba36fb4d 100644
--- a/config/routes/user.rb
+++ b/config/routes/user.rb
@@ -1,3 +1,6 @@
+get 'unsubscribes/:email', to: 'unsubscribes#show', as: :unsubscribe
+post 'unsubscribes/:email', to: 'unsubscribes#create'
+
# Allows individual providers to be directed to a chosen controller
# Call from inside devise_scope
def override_omniauth(provider, controller, path_prefix = '/users/auth')
@@ -25,6 +28,15 @@ devise_for :users, controllers: { omniauth_callbacks: :omniauth_callbacks,
devise_scope :user do
get '/users/auth/:provider/omniauth_error' => 'omniauth_callbacks#omniauth_error', as: :omniauth_error
get '/users/almost_there' => 'confirmations#almost_there'
+
+ get '/users/auth/kerberos_spnego/negotiate' => 'omniauth_kerberos_spnego#negotiate'
+end
+
+scope '-/users', module: :users do
+ resources :terms, only: [:index] do
+ post :accept, on: :member
+ post :decline, on: :member
+ end
end
scope '-/users', module: :users do