diff options
author | Lin Jen-Shin <godfat@godfat.org> | 2016-07-14 16:45:46 +0800 |
---|---|---|
committer | Lin Jen-Shin <godfat@godfat.org> | 2016-07-14 16:45:46 +0800 |
commit | d7bbee7593ee54a9685c9eded00b121cca3913be (patch) | |
tree | ca958768e75674faf1412520c402a5ae5b6d8173 | |
parent | e01c421b911a46774f8c5be92d383d8da14750c3 (diff) | |
download | gitlab-ce-d7bbee7593ee54a9685c9eded00b121cca3913be.tar.gz |
Update routes based on feedback from:
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5142#note_13058785
And note that job/build_name could contain `/`
-rw-r--r-- | app/controllers/projects/artifacts_controller.rb | 2 | ||||
-rw-r--r-- | config/routes.rb | 15 | ||||
-rw-r--r-- | spec/requests/projects/artifacts_controller_spec.rb | 8 |
3 files changed, 13 insertions, 12 deletions
diff --git a/app/controllers/projects/artifacts_controller.rb b/app/controllers/projects/artifacts_controller.rb index f1370efd64e..3e487c24cbd 100644 --- a/app/controllers/projects/artifacts_controller.rb +++ b/app/controllers/projects/artifacts_controller.rb @@ -61,7 +61,7 @@ class Projects::ArtifactsController < Projects::ApplicationController def build_from_ref if params[:ref_name] - builds = project.builds_for(params[:build_name], params[:ref_name]) + builds = project.builds_for(params[:job], params[:ref_name]) builds.success.latest.first end diff --git a/config/routes.rb b/config/routes.rb index 203f679226e..ea6465038df 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -733,16 +733,17 @@ Rails.application.routes.draw do resources :environments, only: [:index, :show, :new, :create, :destroy] - resources :artifacts, only: [] do - collection do - get :search, path: ':ref_name/:build_name/*path', format: false, - constraints: { ref_name: /.+/ } # ref could have / - end - end - resources :builds, only: [:index, :show], constraints: { id: /\d+/ } do collection do post :cancel_all + + resources :artifacts, only: [] do + collection do + get :search, path: ':ref_name/*path', + format: false, + constraints: { ref_name: /.+/ } # could have / + end + end end member do diff --git a/spec/requests/projects/artifacts_controller_spec.rb b/spec/requests/projects/artifacts_controller_spec.rb index d44901289d8..574b7028617 100644 --- a/spec/requests/projects/artifacts_controller_spec.rb +++ b/spec/requests/projects/artifacts_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' require_relative '../shared/artifacts_context' describe Projects::ArtifactsController do - describe 'GET /:project/artifacts/:ref/:build_name/browse' do + describe 'GET /:project/builds/artifacts/:ref_name/browse?job=name' do include_context 'artifacts from ref and build name' before do @@ -10,13 +10,13 @@ describe Projects::ArtifactsController do end def path_from_ref( - ref = pipeline.sha, build_name = build.name, path = 'browse') + ref = pipeline.sha, job = build.name, path = 'browse') search_namespace_project_artifacts_path( project.namespace, project, ref, - build_name, - path) + path, + job: job) end context '404' do |