summaryrefslogtreecommitdiffstats
path: root/jjb/apex/apex-build.sh
diff options
context:
space:
mode:
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-05-26 00:39:18 +0200
committerFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-05-26 00:39:18 +0200
commitb417f69a136a032a3a6f6075abecb7b10ed64167 (patch)
tree041bdd52826b44409c2d68d3088ea324a36fb9de /jjb/apex/apex-build.sh
parentce4601a1ddc92b32afeef181644fdab09287d948 (diff)
apex: Take builders out of jjb
Having builders embedded in jjb makes maintenance harder than what it could be and error prone so the builders have been taken out. Apart from this, the upcoming change proposals will split yml files in 2, aligning with the rest and jobs in these files can reuse same builders when they are converted in shell scripts. This is the first change in series, trying to align job structure with the rest in order to ease the effort required to troubleshoot the deployments during release verification. The changes are - take builders out of jjb (this patch) - align the main CI jobs with the rest; 1 parent job per scenario/branch which controls triggering and execution of 3 downstream jobs; deploy, yardstick, functest - split yml file in 2; ci jobs ending in apex-ci-jobs.yml (daily) and project jobs ending in apex-project-jobs.yml. (verify, merge, build) Change-Id: I01f8bf351f0cbafbee1f41ec24ad5c2c6f21316f Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
Diffstat (limited to 'jjb/apex/apex-build.sh')
-rwxr-xr-xjjb/apex/apex-build.sh59
1 files changed, 59 insertions, 0 deletions
diff --git a/jjb/apex/apex-build.sh b/jjb/apex/apex-build.sh
new file mode 100755
index 000000000..ca1821abf
--- /dev/null
+++ b/jjb/apex/apex-build.sh
@@ -0,0 +1,59 @@
+#!/bin/bash
+set -o errexit
+set -o nounset
+set -o pipefail
+# log info to console
+echo "Starting the build of Apex using OpenStack Master packages. This will take some time..."
+echo "---------------------------------------------------------------------------------------"
+echo
+# create the cache directory if it doesn't exist
+[[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY
+# set OPNFV_ARTIFACT_VERSION
+if echo $BUILD_TAG | grep "apex-verify" 1> /dev/null; then
+ if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
+ export OPNFV_ARTIFACT_VERSION=brahmaputra-dev${BUILD_NUMBER}
+ export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
+ else
+ export OPNFV_ARTIFACT_VERSION=dev${BUILD_NUMBER}
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY"
+ fi
+elif [ "$ARTIFACT_VERSION" == "daily" ]; then
+ if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
+ export OPNFV_ARTIFACT_VERSION=brahmaputra-$(date -u +"%Y-%m-%d")
+ export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
+ else
+ export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d")
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY --iso"
+ fi
+else
+ export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION}
+ if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
+ export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
+ else
+ export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY --iso"
+ fi
+fi
+# clean for stable but doesn't matter for master
+if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
+ sudo opnfv-clean
+fi
+# start the build
+cd $WORKSPACE/ci
+./build.sh $BUILD_ARGS
+RPM_VERSION=$(grep Version: $BUILD_DIRECTORY/opnfv-apex.spec | awk '{ print $2 }')-$(echo $OPNFV_ARTIFACT_VERSION | tr -d '_-')
+# list the contents of BUILD_OUTPUT directory
+ls -al $BUILD_DIRECTORY
+# save information regarding artifact into file
+(
+ echo "OPNFV_ARTIFACT_VERSION=$OPNFV_ARTIFACT_VERSION"
+ echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
+ echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
+ echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"
+ echo "OPNFV_ARTIFACT_MD5SUM=$(md5sum $BUILD_DIRECTORY/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)"
+ echo "OPNFV_SRPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.src.rpm"
+ echo "OPNFV_RPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.noarch.rpm"
+ echo "OPNFV_RPM_MD5SUM=$(md5sum $BUILD_DIRECTORY/noarch/opnfv-apex-$RPM_VERSION.noarch.rpm | cut -d' ' -f1)"
+ echo "OPNFV_BUILD_URL=$BUILD_URL"
+) > $WORKSPACE/opnfv.properties
+echo "--------------------------------------------------------"
+echo "Done!"