summaryrefslogtreecommitdiff
path: root/lib/api
diff options
context:
space:
mode:
authorKamil Trzcinski <ayufan@ayufan.eu>2017-02-15 17:23:39 +0100
committerKamil Trzcinski <ayufan@ayufan.eu>2017-02-15 17:39:35 +0100
commit03345b3613d7667bd0ef05ec2258049e58d355ec (patch)
tree44288c6cdb9ab47bc5f2e40d4640a05874c6c8b0 /lib/api
parente7f99753dae4de7422836ebf5f72e0dba3a867bb (diff)
downloadgitlab-ce-remove-trigger-requests.tar.gz
Remove trigger request and migrate all data to pipeline, by adding trigger_id and trigger_variables.remove-trigger-requests
Diffstat (limited to 'lib/api')
-rw-r--r--lib/api/triggers.rb9
-rw-r--r--lib/api/v3/entities.rb4
-rw-r--r--lib/api/v3/triggers.rb12
3 files changed, 11 insertions, 14 deletions
diff --git a/lib/api/triggers.rb b/lib/api/triggers.rb
index 1d3767c78ff..311ba248d1a 100644
--- a/lib/api/triggers.rb
+++ b/lib/api/triggers.rb
@@ -32,9 +32,10 @@ module API
end
# create request and trigger builds
- trigger_request = Ci::CreateTriggerRequestService.new.execute(project, trigger, params[:ref].to_s, variables)
- if trigger_request
- present trigger_request.pipeline, with: Entities::Pipeline
+ pipeline = Ci::CreatePipelineService.new(project, nil, ref: params[:ref].to_s).
+ execute(ignore_skip_ci: true, trigger: trigger, trigger_variables: variables)
+ if pipeline
+ present pipeline, with: Entities::Pipeline
else
errors = 'No pipeline created'
render_api_error!(errors, 400)
@@ -51,7 +52,7 @@ module API
authenticate!
authorize! :admin_build, user_project
- triggers = user_project.triggers.includes(:trigger_requests)
+ triggers = user_project.triggers
present paginate(triggers), with: Entities::Trigger
end
diff --git a/lib/api/v3/entities.rb b/lib/api/v3/entities.rb
index 9239c7fd168..3cc0dc968a8 100644
--- a/lib/api/v3/entities.rb
+++ b/lib/api/v3/entities.rb
@@ -11,10 +11,6 @@ module API
Gitlab::UrlBuilder.build(snippet)
end
end
-
- class TriggerRequest < Grape::Entity
- expose :id, :variables
- end
end
end
end
diff --git a/lib/api/v3/triggers.rb b/lib/api/v3/triggers.rb
index 8af182fdd2c..a7d669dfd4f 100644
--- a/lib/api/v3/triggers.rb
+++ b/lib/api/v3/triggers.rb
@@ -5,9 +5,7 @@ module API
requires :id, type: String, desc: 'The ID of a project'
end
resource :projects do
- desc 'Trigger a GitLab project build' do
- success V3::Entities::TriggerRequest
- end
+ desc 'Trigger a GitLab project build'
params do
requires :ref, type: String, desc: 'The commit sha or name of a branch or tag'
requires :token, type: String, desc: 'The unique token of trigger'
@@ -31,9 +29,11 @@ module API
end
# create request and trigger builds
- trigger_request = Ci::CreateTriggerRequestService.new.execute(project, trigger, params[:ref].to_s, variables)
- if trigger_request
- present trigger_request, with: Entities::TriggerRequest
+ pipeline = Ci::CreatePipelineService.new(project, nil, ref: params[:ref].to_s).
+ execute(ignore_skip_ci: true, trigger: trigger, trigger_variables: variables)
+ if pipeline
+ data = { id: pipeline.trigger_id, variables: pipeline.trigger_variables }
+ present data
else
errors = 'No builds created'
render_api_error!(errors, 400)