gitlab-org--gitlab-foss/scripts/trigger-build
2017-06-09 17:09:46 +05:30

27 lines
798 B
Ruby
Executable file

#!/usr/bin/env ruby
require 'net/http'
require 'json'
uri = URI('https://gitlab.com/api/v4/projects/20699/trigger/pipeline')
params = {
"ref" => ENV["OMNIBUS_BRANCH"] || "master",
"token" => ENV["BUILD_TRIGGER_TOKEN"],
"variables[GITLAB_VERSION]" => ENV["CI_COMMIT_SHA"],
"variables[ALTERNATIVE_SOURCES]" => true,
"variables[ee]" => ENV["EE_PACKAGE"] || "false"
}
Dir.glob("*_VERSION").each do |version_file|
params["variables[#{version_file}]"] = File.read(version_file).strip
end
res = Net::HTTP.post_form(uri, params)
pipeline_id = JSON.parse(res.body)['id']
unless pipeline_id.nil?
puts "Triggered pipeline can be found at https://gitlab.com/gitlab-org/omnibus-gitlab/pipelines/#{pipeline_id}"
else
puts "Trigger failed. The response from trigger is: "
puts res.body
end