2011-03-09 13:13:36 +00:00
|
|
|
Rosa::Application.routes.draw do
|
2014-03-28 22:14:37 +00:00
|
|
|
|
2014-04-11 21:29:43 +01:00
|
|
|
# ActiveAdmin routes.
|
|
|
|
ActiveAdmin.routes(self)
|
|
|
|
|
|
|
|
namespace :admin do
|
|
|
|
constraints Rosa::Constraints::AdminAccess do
|
|
|
|
mount Resque::Server => 'resque'
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2014-03-28 22:14:37 +00:00
|
|
|
# Redirect sitemap1.xml.gz file on AWS S3
|
|
|
|
match '/sitemap.xml.gz' => 'sitemap#show', via: [:get, :post, :head], as: :sitemap
|
|
|
|
match '/robots.txt' => 'sitemap#robots', via: [:get, :post, :head], as: :robots
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resource :contact, only: [:new, :create, :sended] do
|
2012-07-20 17:06:31 +01:00
|
|
|
get '/' => 'contacts#new'
|
|
|
|
get :sended
|
|
|
|
end
|
|
|
|
|
2014-03-27 14:25:15 +00:00
|
|
|
devise_scope :user do
|
2011-10-11 21:56:51 +01:00
|
|
|
get '/users/auth/:provider' => 'users/omniauth_callbacks#passthru'
|
2014-01-21 04:51:49 +00:00
|
|
|
get 'users/sign_up' => 'users/registrations#new', as: :new_user_registration
|
|
|
|
post 'users' => 'users/registrations#create', as: :user_registration
|
2013-08-28 16:15:28 +01:00
|
|
|
end
|
2012-05-02 10:18:07 +01:00
|
|
|
|
2014-03-31 11:25:56 +01:00
|
|
|
devise_for :users, controllers: {
|
|
|
|
omniauth_callbacks: 'users/omniauth_callbacks',
|
|
|
|
confirmations: 'users/confirmations'
|
|
|
|
}, skip: [:registrations]
|
2014-03-12 15:59:57 +00:00
|
|
|
|
2012-07-31 08:35:27 +01:00
|
|
|
namespace :api do
|
|
|
|
namespace :v1 do
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :advisories, only: [:index, :show, :create, :update]
|
|
|
|
resources :search, only: [:index]
|
|
|
|
resources :build_lists, only: [:index, :create, :show] do
|
2012-07-31 08:35:27 +01:00
|
|
|
member {
|
2012-12-26 18:35:13 +00:00
|
|
|
put :publish
|
|
|
|
put :reject_publish
|
2014-05-22 19:08:43 +01:00
|
|
|
put :rerun_tests
|
2012-12-26 18:35:13 +00:00
|
|
|
put :cancel
|
2013-01-30 20:04:19 +00:00
|
|
|
put :create_container
|
2013-11-18 18:12:50 +00:00
|
|
|
put :publish_into_testing
|
2012-07-31 08:35:27 +01:00
|
|
|
}
|
|
|
|
end
|
2014-04-07 22:30:01 +01:00
|
|
|
resources :arches, only: :index
|
2014-04-08 22:07:50 +01:00
|
|
|
resources :platforms, only: %i(index show update destroy create) do
|
2012-10-09 16:06:27 +01:00
|
|
|
collection {
|
|
|
|
get :platforms_for_build
|
2013-06-26 13:04:06 +01:00
|
|
|
get :allowed
|
2012-10-09 16:06:27 +01:00
|
|
|
}
|
|
|
|
member {
|
|
|
|
get :members
|
2012-10-09 17:23:48 +01:00
|
|
|
put :add_member
|
2012-10-09 18:07:10 +01:00
|
|
|
delete :remove_member
|
2012-10-10 16:13:14 +01:00
|
|
|
post :clone
|
|
|
|
put :clear
|
2012-10-09 16:06:27 +01:00
|
|
|
}
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :maintainers, only: [ :index ]
|
2012-10-08 19:02:44 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :repositories, only: [:show, :update, :destroy] do
|
2012-10-14 13:00:49 +01:00
|
|
|
member {
|
2013-07-26 16:38:39 +01:00
|
|
|
get :projects
|
|
|
|
get :key_pair
|
2014-01-20 21:24:22 +00:00
|
|
|
get :packages
|
2013-07-26 16:38:39 +01:00
|
|
|
put :add_member
|
|
|
|
delete :remove_member
|
|
|
|
put :add_project
|
|
|
|
delete :remove_project
|
|
|
|
put :signatures
|
2013-07-29 13:24:41 +01:00
|
|
|
put :add_repo_lock_file
|
2013-07-29 14:14:55 +01:00
|
|
|
delete :remove_repo_lock_file
|
2012-10-14 13:00:49 +01:00
|
|
|
}
|
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :projects, only: [:index, :show, :update, :create, :destroy] do
|
2012-08-28 17:57:12 +01:00
|
|
|
collection { get :get_id }
|
2012-10-11 17:27:17 +01:00
|
|
|
member {
|
2012-10-17 14:46:16 +01:00
|
|
|
post :fork
|
2012-10-11 17:27:17 +01:00
|
|
|
get :refs_list
|
2012-10-17 11:35:33 +01:00
|
|
|
get :members
|
|
|
|
put :add_member
|
|
|
|
delete :remove_member
|
|
|
|
put :update_member
|
2012-10-11 17:27:17 +01:00
|
|
|
}
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :build_lists, only: :index
|
|
|
|
resources :issues, only: [:index, :create, :show, :update]
|
|
|
|
resources :pull_requests, only: [:index, :create, :show, :update] do
|
2013-06-21 14:45:28 +01:00
|
|
|
member {
|
|
|
|
get :commits
|
|
|
|
get :files
|
2013-06-24 16:18:17 +01:00
|
|
|
put :merge
|
2013-06-21 14:45:28 +01:00
|
|
|
}
|
|
|
|
end
|
2012-08-28 17:57:12 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :users, only: [:show]
|
2012-10-15 16:47:42 +01:00
|
|
|
get 'user' => 'users#show_current_user'
|
2014-01-21 04:51:49 +00:00
|
|
|
resource :user, only: [:update] do
|
2012-10-15 15:06:08 +01:00
|
|
|
member {
|
|
|
|
get :notifiers
|
|
|
|
put :notifiers
|
2013-04-12 17:52:56 +01:00
|
|
|
get '/issues' => 'issues#user_index'
|
2013-06-18 20:45:40 +01:00
|
|
|
get '/pull_requests' => 'pull_requests#user_index'
|
2012-10-15 15:06:08 +01:00
|
|
|
}
|
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :groups, only: [:index, :show, :update, :create, :destroy] do
|
2012-10-16 12:49:07 +01:00
|
|
|
member {
|
|
|
|
get :members
|
|
|
|
put :add_member
|
|
|
|
delete :remove_member
|
|
|
|
put :update_member
|
2013-04-12 17:52:56 +01:00
|
|
|
get '/issues' => 'issues#group_index'
|
2013-06-18 20:45:40 +01:00
|
|
|
get '/pull_requests' => 'pull_requests#group_index'
|
2012-10-16 12:49:07 +01:00
|
|
|
}
|
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :products, only: [:show, :update, :create, :destroy] do
|
|
|
|
resources :product_build_lists, only: :index
|
2013-02-06 19:05:49 +00:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :product_build_lists, only: [:index, :show, :destroy, :create, :update] do
|
|
|
|
put :cancel, on: :member
|
2013-02-06 19:05:49 +00:00
|
|
|
end
|
2013-09-30 17:35:56 +01:00
|
|
|
|
|
|
|
resources :jobs do
|
|
|
|
collection do
|
|
|
|
get :shift
|
|
|
|
get :status
|
|
|
|
put :feedback
|
2013-10-22 18:48:00 +01:00
|
|
|
put :logs
|
2013-11-08 21:15:22 +00:00
|
|
|
put :statistics
|
2013-09-30 17:35:56 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
#resources :ssh_keys, only: [:index, :create, :destroy]
|
2013-04-12 17:52:56 +01:00
|
|
|
get 'issues' => 'issues#all_index'
|
2013-06-18 20:45:40 +01:00
|
|
|
get 'pull_requests' => 'pull_requests#all_index'
|
2012-07-31 08:35:27 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :search, only: [:index]
|
2012-05-02 10:18:07 +01:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/forbidden' => 'pages#forbidden', as: 'forbidden'
|
|
|
|
get '/terms-of-service' => 'pages#tos', as: 'tos'
|
|
|
|
get '/tour/:id' => 'pages#tour_inside', as: 'tour_inside', id: /projects|sources|builds/
|
2013-05-15 18:28:39 +01:00
|
|
|
#match '/invite.html' => redirect('/register_requests/new')
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/activity_feeds.:format' => 'home#activity', as: 'atom_activity_feeds', format: /atom/
|
2013-05-15 18:28:39 +01:00
|
|
|
get '/issues' => 'home#issues'
|
|
|
|
get '/pull_requests' => 'home#pull_requests'
|
2012-05-02 10:18:07 +01:00
|
|
|
|
2012-05-03 15:08:02 +01:00
|
|
|
if APP_CONFIG['anonymous_access']
|
|
|
|
authenticated do
|
2014-01-21 04:51:49 +00:00
|
|
|
root to: 'home#activity'
|
2012-01-11 13:58:13 +00:00
|
|
|
end
|
2014-03-11 07:39:25 +00:00
|
|
|
unauthenticated do
|
|
|
|
root to: 'home#root', as: :authenticated_root
|
|
|
|
end
|
2012-05-03 15:08:02 +01:00
|
|
|
else
|
2014-01-21 04:51:49 +00:00
|
|
|
root to: 'home#activity'
|
2012-03-30 12:26:28 +01:00
|
|
|
end
|
2011-12-09 23:40:13 +00:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :advisories, only: [:index, :show, :search] do
|
|
|
|
get :search, on: :collection
|
2012-07-03 23:52:13 +01:00
|
|
|
end
|
2012-05-05 18:18:29 +01:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
scope module: 'platforms' do
|
|
|
|
resources :platforms, constraints: {id: Platform::NAME_PATTERN} do
|
2012-03-31 00:37:54 +01:00
|
|
|
member do
|
2013-08-23 19:58:29 +01:00
|
|
|
put :regenerate_metadata
|
2013-03-06 12:17:42 +00:00
|
|
|
put :clear
|
2012-05-02 10:18:07 +01:00
|
|
|
get :clone
|
|
|
|
get :members
|
2012-09-12 20:32:51 +01:00
|
|
|
post :remove_members # fixme: change post to delete
|
2013-06-26 10:00:51 +01:00
|
|
|
post :change_visibility
|
2012-05-02 10:18:07 +01:00
|
|
|
delete :remove_member
|
2013-06-26 10:00:51 +01:00
|
|
|
post :add_member
|
2012-05-02 10:18:07 +01:00
|
|
|
post :make_clone
|
2012-06-04 20:49:20 +01:00
|
|
|
get :advisories
|
2012-05-02 10:18:07 +01:00
|
|
|
end
|
2012-07-02 15:50:47 +01:00
|
|
|
|
2014-05-20 22:15:06 +01:00
|
|
|
resources :contents, only: %i(index) do
|
|
|
|
collection do
|
|
|
|
delete :remove_file
|
|
|
|
end
|
|
|
|
end
|
2013-07-05 17:08:09 +01:00
|
|
|
|
2014-06-26 18:20:26 +01:00
|
|
|
resources :mass_builds, only: [:create, :new, :index, :show] do
|
2012-07-02 15:50:47 +01:00
|
|
|
member do
|
2012-07-03 15:34:07 +01:00
|
|
|
post :cancel
|
2013-03-21 14:41:45 +00:00
|
|
|
post :publish
|
2014-06-26 18:20:26 +01:00
|
|
|
get '/:kind' => "mass_builds#get_list", as: :get_list, kind: /failed_builds_list|missed_projects_list|projects_list|tests_failed_builds_list|success_builds_list/
|
2012-07-02 15:50:47 +01:00
|
|
|
end
|
2012-06-27 15:06:59 +01:00
|
|
|
end
|
2012-07-02 15:50:47 +01:00
|
|
|
|
2012-05-02 10:18:07 +01:00
|
|
|
resources :repositories do
|
|
|
|
member do
|
2013-07-26 15:41:39 +01:00
|
|
|
get :add_project
|
2013-11-12 17:13:05 +00:00
|
|
|
put :add_project
|
2013-11-12 12:04:40 +00:00
|
|
|
get :remove_project
|
2013-07-26 15:41:39 +01:00
|
|
|
delete :remove_project
|
|
|
|
get :projects_list
|
|
|
|
post :remove_members # fixme: change post to delete
|
|
|
|
delete :remove_member
|
|
|
|
post :add_member
|
|
|
|
put :regenerate_metadata
|
2013-07-29 13:24:41 +01:00
|
|
|
put :sync_lock_file
|
2012-05-02 10:18:07 +01:00
|
|
|
end
|
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :key_pairs, only: [:create, :index, :destroy]
|
|
|
|
resources :tokens, only: [:create, :index, :show, :new] do
|
2013-06-25 08:00:20 +01:00
|
|
|
member do
|
|
|
|
post :withdraw
|
|
|
|
end
|
|
|
|
end
|
2012-05-02 10:18:07 +01:00
|
|
|
resources :products do
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :product_build_lists, only: [:create, :destroy, :new, :show, :update] do
|
2012-11-12 13:22:19 +00:00
|
|
|
member {
|
|
|
|
get :log
|
2012-12-06 14:41:24 +00:00
|
|
|
put :cancel
|
2012-11-12 13:22:19 +00:00
|
|
|
}
|
2012-11-09 17:42:25 +00:00
|
|
|
end
|
2012-11-06 14:13:16 +00:00
|
|
|
collection { get :autocomplete_project }
|
2012-03-31 00:37:54 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :maintainers, only: [:index]
|
2011-10-27 14:04:03 +01:00
|
|
|
end
|
2012-05-02 10:18:07 +01:00
|
|
|
|
2014-04-09 19:44:19 +01:00
|
|
|
resources :product_build_lists, only: [:index, :show, :update]
|
2011-10-27 14:04:03 +01:00
|
|
|
end
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :autocompletes, only: [] do
|
2012-10-02 17:54:55 +01:00
|
|
|
collection do
|
|
|
|
get :autocomplete_user_uname
|
|
|
|
get :autocomplete_group_uname
|
2013-06-04 20:59:08 +01:00
|
|
|
get :autocomplete_extra_build_list
|
|
|
|
get :autocomplete_extra_repositories
|
2012-10-02 17:54:55 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
scope module: 'users' do
|
|
|
|
get '/settings/ssh_keys' => 'ssh_keys#index', as: :ssh_keys
|
2013-03-07 08:06:34 +00:00
|
|
|
post '/settings/ssh_keys' => 'ssh_keys#create'
|
2014-01-21 04:51:49 +00:00
|
|
|
delete '/settings/ssh_keys/:id' => 'ssh_keys#destroy', as: :ssh_key
|
2013-03-07 08:06:34 +00:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :settings, only: [] do
|
2012-02-27 16:10:12 +00:00
|
|
|
collection do
|
2012-05-02 10:18:07 +01:00
|
|
|
get :profile
|
2014-03-17 17:01:17 +00:00
|
|
|
patch :profile
|
2012-05-02 10:18:07 +01:00
|
|
|
get :private
|
2014-03-17 17:01:17 +00:00
|
|
|
patch :private
|
2012-05-02 10:18:07 +01:00
|
|
|
get :notifiers
|
2014-03-14 22:54:04 +00:00
|
|
|
patch :notifiers
|
2013-10-16 18:30:40 +01:00
|
|
|
put :reset_auth_token
|
2012-02-27 16:10:12 +00:00
|
|
|
end
|
2011-03-10 14:20:09 +00:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :register_requests, only: [:new, :create], format: /ru|en/ #view support only two languages
|
2013-03-07 08:06:34 +00:00
|
|
|
|
|
|
|
get '/allowed' => 'users#allowed'
|
|
|
|
get '/check' => 'users#check'
|
|
|
|
get '/discover' => 'users#discover'
|
2011-03-10 11:35:46 +00:00
|
|
|
end
|
2012-04-11 19:29:08 +01:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
scope module: 'groups' do
|
|
|
|
get '/groups/new' => 'profile#new' # need to force next route exclude id: 'new'
|
2014-03-19 23:00:16 +00:00
|
|
|
get '/groups/:id' => redirect("/%{id}"), as: :profile_group # override default group show route
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :groups, controller: 'profile' do
|
|
|
|
delete :remove_user, on: :member
|
|
|
|
resources :members, only: [:index] do
|
2012-05-02 10:18:07 +01:00
|
|
|
collection do
|
|
|
|
post :add
|
|
|
|
post :update
|
|
|
|
delete :remove
|
|
|
|
end
|
|
|
|
end
|
2012-03-31 00:37:54 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
scope module: 'projects' do
|
|
|
|
resources :build_lists, only: [:index, :show] do
|
2012-05-02 10:18:07 +01:00
|
|
|
member do
|
|
|
|
put :cancel
|
2013-01-25 17:24:46 +00:00
|
|
|
put :create_container
|
2014-05-21 23:58:13 +01:00
|
|
|
put :rerun_tests
|
2012-08-17 09:23:49 +01:00
|
|
|
get :log
|
2014-03-24 17:54:05 +00:00
|
|
|
patch :publish
|
2013-06-10 12:26:12 +01:00
|
|
|
put :reject_publish
|
2013-11-01 17:11:59 +00:00
|
|
|
put :publish_into_testing
|
2014-02-19 08:24:15 +00:00
|
|
|
put :update_type
|
2012-05-02 10:18:07 +01:00
|
|
|
end
|
|
|
|
end
|
2012-04-19 18:35:35 +01:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :projects, only: [:index, :new, :create] do
|
2013-11-13 22:01:12 +00:00
|
|
|
collection do
|
|
|
|
post :run_mass_import
|
|
|
|
get :mass_import
|
|
|
|
end
|
|
|
|
end
|
2014-03-19 07:19:03 +00:00
|
|
|
scope ':name_with_owner', constraints: { name_with_owner: Project::OWNER_AND_NAME_REGEXP } do # project
|
2014-01-21 04:51:49 +00:00
|
|
|
scope as: 'project' do
|
2012-05-03 22:52:56 +01:00
|
|
|
resources :wiki do
|
|
|
|
collection do
|
2014-01-21 04:51:49 +00:00
|
|
|
match '_history' => 'wiki#wiki_history', as: :history, via: :get
|
|
|
|
match '_access' => 'wiki#git', as: :git, via: :get
|
|
|
|
match '_revert/:sha1/:sha2' => 'wiki#revert_wiki', as: :revert, via: [:get, :post]
|
|
|
|
match '_compare' => 'wiki#compare_wiki', as: :compare, via: :post
|
|
|
|
#match '_compare/:versions' => 'wiki#compare_wiki', versions: /.*/, as: :compare_versions, via: :get
|
|
|
|
match '_compare/:versions' => 'wiki#compare_wiki', versions: /([a-f0-9\^]{6,40})(\.\.\.[a-f0-9\^]{6,40})/, as: :compare_versions, via: :get
|
2012-05-03 22:52:56 +01:00
|
|
|
post :preview
|
|
|
|
get :search
|
|
|
|
get :pages
|
|
|
|
end
|
|
|
|
member do
|
|
|
|
get :history
|
|
|
|
get :edit
|
2014-01-21 04:51:49 +00:00
|
|
|
match 'revert/:sha1/:sha2' => 'wiki#revert', as: :revert_page, via: [:get, :post]
|
|
|
|
match ':ref' => 'wiki#show', as: :versioned, via: :get
|
2012-03-31 00:37:54 +01:00
|
|
|
|
2012-05-03 22:52:56 +01:00
|
|
|
post :compare
|
2014-01-21 04:51:49 +00:00
|
|
|
#match 'compare/*versions' => 'wiki#compare', as: :compare_versions, via: :get
|
|
|
|
match 'compare/:versions' => 'wiki#compare', versions: /([a-f0-9\^]{6,40})(\.\.\.[a-f0-9\^]{6,40})/, as: :compare_versions, via: :get
|
2012-05-03 22:52:56 +01:00
|
|
|
end
|
2012-04-19 20:45:50 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :issues, except: [:destroy, :edit] do
|
|
|
|
resources :comments, only: [:edit, :create, :update, :destroy]
|
|
|
|
resources :subscribes, only: [:create, :destroy]
|
2012-05-03 22:52:56 +01:00
|
|
|
collection do
|
|
|
|
post :create_label
|
|
|
|
get :search_collaborators
|
|
|
|
end
|
2012-04-19 20:45:50 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
post "/labels/:label_id" => "issues#destroy_label", as: :issues_delete_label
|
|
|
|
post "/labels/:label_id/update" => "issues#update_label", as: :issues_update_label
|
2013-08-06 14:59:32 +01:00
|
|
|
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :build_lists, only: [:index, :new, :create] do
|
|
|
|
get :list, on: :collection
|
2012-04-19 20:45:50 +01:00
|
|
|
end
|
2012-05-03 22:52:56 +01:00
|
|
|
resources :collaborators do
|
2014-01-21 04:51:49 +00:00
|
|
|
get :find, on: :collection
|
2012-05-14 18:09:18 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
resources :hooks, except: :show
|
|
|
|
resources :pull_requests, except: :destroy do
|
|
|
|
get :autocomplete_to_project, on: :collection
|
|
|
|
put :merge, on: :member
|
2012-05-17 17:47:36 +01:00
|
|
|
end
|
2014-01-21 04:51:49 +00:00
|
|
|
post '/preview' => 'projects#preview', as: 'md_preview'
|
|
|
|
post 'refs_list' => 'projects#refs_list', as: 'refs_list'
|
|
|
|
get '/pull_requests/:issue_id/add_line_comments(.:format)' => "comments#new_line", as: :new_line_pull_comment
|
2014-02-18 19:16:23 +00:00
|
|
|
put 'schedule' => 'projects#schedule'
|
2012-05-10 17:57:59 +01:00
|
|
|
end
|
|
|
|
|
2012-04-19 20:45:50 +01:00
|
|
|
# Resource
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/autocomplete_maintainers' => 'projects#autocomplete_maintainers', as: :autocomplete_maintainers
|
|
|
|
get '/modify' => 'projects#edit', as: :edit_project
|
2014-03-24 18:30:12 +00:00
|
|
|
patch '/' => 'projects#update'
|
2012-04-19 20:45:50 +01:00
|
|
|
delete '/' => 'projects#destroy'
|
|
|
|
# Member
|
2014-01-21 04:51:49 +00:00
|
|
|
post '/fork' => 'projects#fork', as: :fork_project
|
|
|
|
get '/possible_forks' => 'projects#possible_forks', as: :possible_forks_project
|
|
|
|
get '/sections' => 'projects#sections', as: :sections_project
|
2012-04-19 20:45:50 +01:00
|
|
|
post '/sections' => 'projects#sections'
|
2014-01-21 04:51:49 +00:00
|
|
|
delete '/remove_user' => 'projects#remove_user', as: :remove_user_project
|
2014-03-14 22:54:04 +00:00
|
|
|
# constraints treeish: /[\w\-\.]+(\/[\w\-\.]+)?/ do
|
2014-03-25 19:20:37 +00:00
|
|
|
constraints treeish: /.+/ do
|
2012-07-17 09:02:56 +01:00
|
|
|
constraints Rosa::Constraints::Treeish do
|
|
|
|
# Tree
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/' => "git/trees#show", as: :project
|
|
|
|
get '/tree/:treeish(/*path)' => "git/trees#show", as: :tree, format: false
|
2013-02-12 16:35:14 +00:00
|
|
|
# Tags
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/tags' => "git/trees#tags", as: :tags
|
2013-02-12 16:35:14 +00:00
|
|
|
# Branches
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/branches' => "git/trees#branches", as: :branches
|
2014-03-13 16:35:00 +00:00
|
|
|
get '/branches/:treeish' => "git/trees#branches", as: :branch
|
2014-03-11 07:39:25 +00:00
|
|
|
delete '/branches/:treeish' => "git/trees#destroy", as: :destroy_branch
|
|
|
|
put '/branches/:treeish' => "git/trees#restore_branch", as: :restore_branch
|
|
|
|
post '/branches' => "git/trees#create", as: :create_branch
|
2012-07-17 09:02:56 +01:00
|
|
|
# Commits
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/commits/:treeish(/*path)' => "git/commits#index", as: :commits, format: false
|
|
|
|
get '/commit/:id(.:format)' => "git/commits#show", as: :commit
|
2012-07-17 09:02:56 +01:00
|
|
|
# Commit comments
|
2014-01-21 04:51:49 +00:00
|
|
|
post '/commit/:commit_id/comments(.:format)' => "comments#create", as: :project_commit_comments
|
|
|
|
get '/commit/:commit_id/comments/:id(.:format)' => "comments#edit", as: :edit_project_commit_comment
|
2014-04-15 10:14:58 +01:00
|
|
|
patch '/commit/:commit_id/comments/:id(.:format)' => "comments#update", as: :project_commit_comment
|
2012-07-17 09:02:56 +01:00
|
|
|
delete '/commit/:commit_id/comments/:id(.:format)' => "comments#destroy"
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/commit/:commit_id/add_line_comments(.:format)' => "comments#new_line", as: :new_line_commit_comment
|
2012-07-17 09:02:56 +01:00
|
|
|
# Commit subscribes
|
2014-01-21 04:51:49 +00:00
|
|
|
post '/commit/:commit_id/subscribe' => "commit_subscribes#create", as: :subscribe_commit
|
|
|
|
delete '/commit/:commit_id/unsubscribe' => "commit_subscribes#destroy", as: :unsubscribe_commit
|
2012-07-17 09:02:56 +01:00
|
|
|
# Editing files
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/edit/:treeish/*path' => "git/blobs#edit", as: :edit_blob, format: false
|
|
|
|
put '/edit/:treeish/*path' => "git/blobs#update", format: false
|
2012-07-17 09:02:56 +01:00
|
|
|
# Blobs
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/blob/:treeish/*path' => "git/blobs#show", as: :blob, format: false
|
2012-07-17 09:02:56 +01:00
|
|
|
# Blame
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/blame/:treeish/*path' => "git/blobs#blame", as: :blame, format: false
|
2012-07-17 09:02:56 +01:00
|
|
|
# Raw
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/raw/:treeish/*path' => "git/blobs#raw", as: :raw, format: false
|
2012-07-17 09:02:56 +01:00
|
|
|
# Archive
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/archive/:treeish.:format' => "git/trees#archive", as: :archive, format: /zip|tar\.gz/
|
2012-11-19 19:15:15 +00:00
|
|
|
# Git diff
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/diff/:diff' => "git/commits#diff", as: :diff, format: false, diff: /.*/
|
2012-07-17 09:02:56 +01:00
|
|
|
end
|
2012-07-03 13:05:27 +01:00
|
|
|
end
|
2012-04-19 20:45:50 +01:00
|
|
|
end
|
2012-03-31 00:37:54 +01:00
|
|
|
end
|
|
|
|
|
2012-05-03 22:52:56 +01:00
|
|
|
scope ':uname' do # project owner profile
|
2012-07-17 09:02:56 +01:00
|
|
|
constraints Rosa::Constraints::Owner.new(User) do
|
2014-01-21 04:51:49 +00:00
|
|
|
get '/' => 'users/profile#show', as: :user
|
2012-05-03 22:52:56 +01:00
|
|
|
end
|
2012-07-17 09:02:56 +01:00
|
|
|
constraints Rosa::Constraints::Owner.new(Group, true) do
|
2014-03-19 23:00:16 +00:00
|
|
|
get '/' => 'groups/profile#show'
|
2012-03-31 00:37:54 +01:00
|
|
|
end
|
|
|
|
end
|
2013-03-15 13:35:32 +00:00
|
|
|
|
|
|
|
# As of Rails 3.0.1, using rescue_from in your ApplicationController to
|
|
|
|
# recover from a routing error is broken!
|
|
|
|
# see: https://rails.lighthouseapp.com/projects/8994/tickets/4444-can-no-longer-rescue_from-actioncontrollerroutingerror
|
2014-03-11 07:39:25 +00:00
|
|
|
get '*a', to: 'application#render_404'
|
2011-03-09 13:13:36 +00:00
|
|
|
end
|