gitlab-org--gitlab-foss/app/services/ci/create_trigger_request_serv...

23 lines
545 B
Ruby
Raw Normal View History

2015-08-25 21:42:46 -04:00
module Ci
class CreateTriggerRequestService
def execute(project, trigger, ref, variables = nil)
2015-12-04 06:55:23 -05:00
commit = project.commit(ref)
2015-10-05 08:31:51 -04:00
return unless commit
2015-08-25 21:42:46 -04:00
2015-10-05 07:37:50 -04:00
# check if ref is tag
2015-12-04 06:55:23 -05:00
tag = project.repository.find_tag(ref).present?
2015-10-05 08:31:51 -04:00
2015-12-04 06:55:23 -05:00
ci_commit = project.ensure_ci_commit(commit.sha)
2015-10-05 07:37:50 -04:00
2015-08-25 21:42:46 -04:00
trigger_request = trigger.trigger_requests.create!(
variables: variables,
commit: ci_commit,
2015-08-25 21:42:46 -04:00
)
2015-10-02 07:46:38 -04:00
if ci_commit.create_builds(ref, tag, nil, trigger_request)
2015-08-25 21:42:46 -04:00
trigger_request
end
end
end
end