Move builds badge implementation to new badges controller
This commit is contained in:
parent
ee1bee5834
commit
28b11963b1
5 changed files with 19 additions and 14 deletions
11
app/controllers/projects/badges_controller.rb
Normal file
11
app/controllers/projects/badges_controller.rb
Normal file
|
@ -0,0 +1,11 @@
|
|||
class Projects::BadgesController < Projects::ApplicationController
|
||||
def build
|
||||
respond_to do |format|
|
||||
format.html { render_404 }
|
||||
format.svg do
|
||||
image = Ci::ImageForBuildService.new.execute(project, ref: params[:ref])
|
||||
send_file(image.path, filename: image.name, disposition: 'inline', type: 'image/svg+xml')
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -56,16 +56,6 @@ class Projects::BuildsController < Projects::ApplicationController
|
|||
render json: @build.to_json(only: [:status, :id, :sha, :coverage], methods: :sha)
|
||||
end
|
||||
|
||||
def badge
|
||||
respond_to do |format|
|
||||
format.html { render_404 }
|
||||
format.svg do
|
||||
image = Ci::ImageForBuildService.new.execute(project, ref: params[:ref])
|
||||
send_file(image.path, filename: image.name, disposition: 'inline', type: 'image/svg+xml')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def build
|
||||
|
|
|
@ -611,8 +611,6 @@ Rails.application.routes.draw do
|
|||
resources :builds, only: [:index, :show], constraints: { id: /\d+/ } do
|
||||
collection do
|
||||
post :cancel_all
|
||||
get :badge, path: 'status/*ref/badge',
|
||||
constraints: { ref: Gitlab::Regex.git_reference_regex, format: /svg/ }
|
||||
end
|
||||
|
||||
member do
|
||||
|
@ -699,6 +697,12 @@ Rails.application.routes.draw do
|
|||
end
|
||||
|
||||
resources :runner_projects, only: [:create, :destroy]
|
||||
resources :badges, only: [], path: 'badges/*ref',
|
||||
constraints: { ref: Gitlab::Regex.git_reference_regex } do
|
||||
collection do
|
||||
get :build, constraints: { format: /svg/ }
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -189,7 +189,7 @@ GitLab, such as **Commits** and **Merge Requests**.
|
|||
You can access a builds badge image using following link:
|
||||
|
||||
```
|
||||
http://example.gitlab.com/namespace/project/builds/status/branch/badge.svg
|
||||
http://example.gitlab.com/namespace/project/badges/branch/build.svg
|
||||
```
|
||||
|
||||
## Next steps
|
||||
|
|
|
@ -5,7 +5,7 @@ class Spinach::Features::ProjectBuildsBadge < Spinach::FeatureSteps
|
|||
include RepoHelpers
|
||||
|
||||
step 'I display builds badge for a master branch' do
|
||||
visit badge_namespace_project_builds_path(@project.namespace, @project, ref: :master, format: :svg)
|
||||
visit build_namespace_project_badges_path(@project.namespace, @project, ref: :master, format: :svg)
|
||||
end
|
||||
|
||||
step 'I should see a build success badge' do
|
||||
|
|
Loading…
Reference in a new issue