Commit e85aa424 authored by Balasankar C's avatar Balasankar C

Move triggering build logic to separate script

parent c44680d1
......@@ -149,18 +149,7 @@ build-package:
stage: build
when: manual
script:
# If no branch in omnibus is specified, trigger pipeline against master
- if [ -z "$OMNIBUS_BRANCH" ] ; then export OMNIBUS_BRANCH=master ;fi
- echo "token=${BUILD_TRIGGER_TOKEN}" > version_details
- echo "ref=${OMNIBUS_BRANCH}" >> version_details
- echo "variables[ALTERNATIVE_SOURCES]=true" >> version_details
- echo "variables[GITLAB_VERSION]=${CI_COMMIT_SHA}" >> version_details
# Collect version details of all components
- for f in *_VERSION; do echo "variables[$f]=$(cat $f)" >> version_details; done
# Trigger the API and pass values collected above as parameters to it
- pipeline_id=$(cat version_details | tr '\n' '&' | curl -s -X POST https://gitlab.com/api/v4/projects/20699/trigger/pipeline --data-binary @- | ruby -e "require 'json'; puts JSON.parse(STDIN.read)['id']") > /dev/null
- echo "Triggered pipeline can be found at https://gitlab.com/gitlab-org/omnibus-gitlab/pipelines/${pipeline_id}"
- rm version_details
- scripts/trigger-build
# Prepare and merge knapsack tests
knapsack:
......
#!/usr/bin/env ruby
require 'net/http'
require 'json'
uri = URI('https://gitlab.com/api/v4/projects/20699/trigger/pipeline')
params = {
"token" => ENV['BUILD_TRIGGER_TOKEN'],
"variables[GITLAB_VERSION]" => ENV['CI_COMMIT_SHA'],
"variables[ALTERNATIVE_SOURCES]" => true,
}
params['ref'] = ENV['OMNIBUS_BRANCH'] || "master"
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']
puts "Triggered pipeline can be found at https://gitlab.com/gitlab-org/omnibus-gitlab/pipelines/#{pipeline_id}"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment