summaryrefslogtreecommitdiff
path: root/app/services/ci/create_trigger_request_service.rb
blob: cf3d4aee2bcff92681a12a24a6bb1aa8ed8383fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
module Ci
  class CreateTriggerRequestService
    def execute(project, trigger, ref, variables = nil)
      trigger_request = trigger.trigger_requests.create(variables: variables)

      pipeline = Ci::CreatePipelineService.new(project, trigger.owner, ref: ref)
        .execute(:trigger, ignore_skip_ci: true, trigger_request: trigger_request)

      trigger_request if pipeline.persisted?
    end
  end
end