From 54e9c0b9e3c35d8f53179cb52ca0d62b3ae84703 Mon Sep 17 00:00:00 2001 From: nrbffs <38812627+nrbffs@users.noreply.github.com> Date: Mon, 22 Apr 2019 11:05:07 -0400 Subject: [PATCH] CI: set GLUON_BRANCH depending on build type Introduce the following build type: | Build Type | When | |------------|--------| | stable | commit tag starts with "stable/" | | beta | commit tag starts with "beta/" | | nightly | trigger is a scheduled job | | commit | else | Depending on the build type, set the GLUON_BRANCH accordingly: | Build Type | GLUON_BRANCH | |------------|---------------| | commit | (unset) | | nightly | nightly | | beta | beta | | stable | stable | --- .gitlab-ci.yml | 7 ++++--- get-gluon-branch.sh | 30 ++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100755 get-gluon-branch.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cfedbdd12..85025e5ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -19,7 +19,7 @@ stages: stage: build script: - make -C gluon update GLUON_SITEDIR="$CI_PROJECT_DIR" - - make -C gluon GLUON_SITEDIR="$CI_PROJECT_DIR" GLUON_TARGET="$GLUON_TARGET" GLUON_BRANCH=nightly V=1 -j`nproc` + - make -C gluon GLUON_SITEDIR="$CI_PROJECT_DIR" GLUON_TARGET="$GLUON_TARGET" GLUON_BRANCH=$(./get-gluon-branch.sh) V=1 -j`nproc` artifacts: paths: - gluon/output/ @@ -132,8 +132,9 @@ target:x86-64: package: stage: package script: - - make -C gluon update GLUON_SITEDIR="$CI_PROJECT_DIR" - - make -C gluon manifest GLUON_BRANCH=nightly GLUON_SITEDIR="$CI_PROJECT_DIR" V=1 + - GLUON_BRANCH=$(./get-gluon-branch.sh) + - test -z "$GLUON_BRANCH" || make -C gluon update GLUON_SITEDIR="$CI_PROJECT_DIR" + - test -z "$GLUON_BRANCH" || make -C gluon manifest GLUON_BRANCH=$(./get-gluon-branch.sh) GLUON_SITEDIR="$CI_PROJECT_DIR" V=1 artifacts: paths: - gluon/output diff --git a/get-gluon-branch.sh b/get-gluon-branch.sh new file mode 100755 index 000000000..35e25f116 --- /dev/null +++ b/get-gluon-branch.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +set -eu +set -o pipefail + +# autoupdater +# ==== +# +# For commit builds, the autoupdater shall be off, i.e. GLUON_BRANCH unset. +# For nightly, GLUON_BRANCH must be nightly. +# For beta, GLUON_BRANCH must be beta. +# For stable, GLUON_BRANCH must be stable. + +gluon_branch="" + +if [[ "${CI_PIPELINE_SOURCE:-}" = "schedule" ]]; then + gluon_branch="nightly" +fi + +case "${CI_COMMIT_TAG:-}" in +beta/*) + gluon_branch="beta" +;; +stable/*) + gluon_branch="stable" +;; +esac + +# Else: Commit build +echo $gluon_branch -- GitLab