debian-mirror-gitlab/config/routes/repository.rb

107 lines
3.3 KiB
Ruby
Raw Normal View History

2021-03-11 19:13:27 +05:30
# frozen_string_literal: true
2017-08-17 22:00:37 +05:30
# All routing related to repository browsing
2021-09-04 01:27:46 +05:30
# that is already under /-/ scope only
2017-08-17 22:00:37 +05:30
# 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
get '/compare/:from...:to', to: 'compare#show', as: 'compare', constraints: { from: /.+/, to: /.+/ }
resources :compare, only: [:index, :create] do
collection do
get :diff_for_path
2018-10-15 14:42:47 +05:30
get :signatures
2017-08-17 22:00:37 +05:30
end
end
resources :refs, only: [] do
collection do
get 'switch'
end
member do
# tree viewer logs
2017-09-10 17:25:29 +05:30
get 'logs_tree', constraints: { id: Gitlab::PathRegex.git_reference_regex }
2021-09-04 01:27:46 +05:30
2017-08-17 22:00:37 +05:30
# Directories with leading dots erroneously get rejected if git
# ref regex used in constraints. Regex verification now done in controller.
get 'logs_tree/*path', action: :logs_tree, as: :logs_file, format: false, constraints: {
id: /.*/,
2019-12-21 20:55:43 +05:30
path: /[^\0]*/
2017-08-17 22:00:37 +05:30
}
end
end
2021-09-04 01:27:46 +05:30
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
2022-08-27 11:52:29 +05:30
resources :tags, only: [:index, :show, :new, :create, :destroy]
2021-09-04 01:27:46 +05:30
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
2019-12-04 20:38:33 +05:30
scope constraints: { id: /[^\0]+/ } do
2017-08-17 22:00:37 +05:30
scope controller: :blob do
get '/new/*id', action: :new, as: :new_blob
post '/create/*id', action: :create, as: :create_blob
get '/edit/*id', action: :edit, as: :edit_blob
put '/update/*id', action: :update, as: :update_blob
post '/preview/*id', action: :preview, as: :preview_blob
scope path: '/blob/*id', as: :blob do
get :diff
get '/', action: :show
delete '/', action: :destroy
post '/', action: :create
put '/', action: :update
end
end
get '/tree/*id', to: 'tree#show', as: :tree
get '/raw/*id', to: 'raw#show', as: :raw
2023-05-27 22:25:52 +05:30
get '/blame_page/*id', to: 'blame#page', as: :blame_page
2017-08-17 22:00:37 +05:30
get '/blame/*id', to: 'blame#show', as: :blame
2017-09-10 17:25:29 +05:30
2018-11-18 11:00:15 +05:30
get '/commits', to: 'commits#commits_root', as: :commits_root
2017-09-10 17:25:29 +05:30
get '/commits/*id/signatures', to: 'commits#signatures', as: :signatures
2017-08-17 22:00:37 +05:30
get '/commits/*id', to: 'commits#show', as: :commits
post '/create_dir/*id', to: 'tree#create_dir', as: :create_dir
scope controller: :find_file do
get '/find_file/*id', action: :show, as: :find_file
get '/files/*id', action: :list, as: :files
end
end
end
2021-09-04 01:27:46 +05:30
resources :commit, only: [:show], constraints: { id: /\h{7,40}/ } do
member do
get :branches
get :pipelines
post :revert
post :cherry_pick
get :diff_for_path
get :diff_files
get :merge_requests
end
end
resource :repository, only: [:create]