summaryrefslogtreecommitdiff
path: root/lib/api/triggers.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/triggers.rb')
-rw-r--r--lib/api/triggers.rb63
1 files changed, 32 insertions, 31 deletions
diff --git a/lib/api/triggers.rb b/lib/api/triggers.rb
index 8fc7c7361e1..6754fc13ec1 100644
--- a/lib/api/triggers.rb
+++ b/lib/api/triggers.rb
@@ -5,24 +5,24 @@ module API
include PaginationParams
params do
- requires :id, type: String, desc: 'The ID of a project'
+ requires :id, type: String, desc: "The ID of a project"
end
resource :projects, requirements: API::NAMESPACE_OR_PROJECT_REQUIREMENTS do
- desc 'Trigger a GitLab project pipeline' do
+ desc "Trigger a GitLab project pipeline" do
success Entities::Pipeline
end
params do
- requires :ref, type: String, desc: 'The commit sha or name of a branch or tag', allow_blank: false
- requires :token, type: String, desc: 'The unique token of trigger'
- optional :variables, type: Hash, desc: 'The list of variables to be injected into build'
+ requires :ref, type: String, desc: "The commit sha or name of a branch or tag", allow_blank: false
+ requires :token, type: String, desc: "The unique token of trigger"
+ optional :variables, type: Hash, desc: "The list of variables to be injected into build"
end
- post ":id/(ref/:ref/)trigger/pipeline", requirements: { ref: /.+/ } do
- Gitlab::QueryLimiting.whitelist('https://gitlab.com/gitlab-org/gitlab-ce/issues/42283')
+ post ":id/(ref/:ref/)trigger/pipeline", requirements: {ref: /.+/} do
+ Gitlab::QueryLimiting.whitelist("https://gitlab.com/gitlab-org/gitlab-ce/issues/42283")
# validate variables
params[:variables] = params[:variables].to_h
unless params[:variables].all? { |key, value| key.is_a?(String) && value.is_a?(String) }
- render_api_error!('variables needs to be a map of key-valued strings', 400)
+ render_api_error!("variables needs to be a map of key-valued strings", 400)
end
project = find_project(params[:id])
@@ -38,14 +38,14 @@ module API
end
end
- desc 'Get triggers list' do
+ desc "Get triggers list" do
success Entities::Trigger
end
params do
use :pagination
end
# rubocop: disable CodeReuse/ActiveRecord
- get ':id/triggers' do
+ get ":id/triggers" do
authenticate!
authorize! :admin_build, user_project
@@ -55,34 +55,35 @@ module API
end
# rubocop: enable CodeReuse/ActiveRecord
- desc 'Get specific trigger of a project' do
+ desc "Get specific trigger of a project" do
success Entities::Trigger
end
params do
- requires :trigger_id, type: Integer, desc: 'The trigger ID'
+ requires :trigger_id, type: Integer, desc: "The trigger ID"
end
- get ':id/triggers/:trigger_id' do
+ get ":id/triggers/:trigger_id" do
authenticate!
authorize! :admin_build, user_project
trigger = user_project.triggers.find(params.delete(:trigger_id))
- break not_found!('Trigger') unless trigger
+ break not_found!("Trigger") unless trigger
present trigger, with: Entities::Trigger, current_user: current_user
end
- desc 'Create a trigger' do
+ desc "Create a trigger" do
success Entities::Trigger
end
params do
- requires :description, type: String, desc: 'The trigger description'
+ requires :description, type: String, desc: "The trigger description"
end
- post ':id/triggers' do
+ post ":id/triggers" do
authenticate!
authorize! :admin_build, user_project
trigger = user_project.triggers.create(
- declared_params(include_missing: false).merge(owner: current_user))
+ declared_params(include_missing: false).merge(owner: current_user)
+ )
if trigger.valid?
present trigger, with: Entities::Trigger, current_user: current_user
@@ -91,19 +92,19 @@ module API
end
end
- desc 'Update a trigger' do
+ desc "Update a trigger" do
success Entities::Trigger
end
params do
- requires :trigger_id, type: Integer, desc: 'The trigger ID'
- optional :description, type: String, desc: 'The trigger description'
+ requires :trigger_id, type: Integer, desc: "The trigger ID"
+ optional :description, type: String, desc: "The trigger description"
end
- put ':id/triggers/:trigger_id' do
+ put ":id/triggers/:trigger_id" do
authenticate!
authorize! :admin_build, user_project
trigger = user_project.triggers.find(params.delete(:trigger_id))
- break not_found!('Trigger') unless trigger
+ break not_found!("Trigger") unless trigger
if trigger.update(declared_params(include_missing: false))
present trigger, with: Entities::Trigger, current_user: current_user
@@ -112,18 +113,18 @@ module API
end
end
- desc 'Take ownership of trigger' do
+ desc "Take ownership of trigger" do
success Entities::Trigger
end
params do
- requires :trigger_id, type: Integer, desc: 'The trigger ID'
+ requires :trigger_id, type: Integer, desc: "The trigger ID"
end
- post ':id/triggers/:trigger_id/take_ownership' do
+ post ":id/triggers/:trigger_id/take_ownership" do
authenticate!
authorize! :admin_build, user_project
trigger = user_project.triggers.find(params.delete(:trigger_id))
- break not_found!('Trigger') unless trigger
+ break not_found!("Trigger") unless trigger
if trigger.update(owner: current_user)
status :ok
@@ -133,18 +134,18 @@ module API
end
end
- desc 'Delete a trigger' do
+ desc "Delete a trigger" do
success Entities::Trigger
end
params do
- requires :trigger_id, type: Integer, desc: 'The trigger ID'
+ requires :trigger_id, type: Integer, desc: "The trigger ID"
end
- delete ':id/triggers/:trigger_id' do
+ delete ":id/triggers/:trigger_id" do
authenticate!
authorize! :admin_build, user_project
trigger = user_project.triggers.find(params.delete(:trigger_id))
- break not_found!('Trigger') unless trigger
+ break not_found!("Trigger") unless trigger
destroy_conditionally!(trigger)
end