ca1821abfee45becdd7a79bb0f1155cc784e3c91
[releng.git] / jjb / apex / apex-build.sh
1 #!/bin/bash
2 set -o errexit
3 set -o nounset
4 set -o pipefail
5 # log info to console
6 echo "Starting the build of Apex using OpenStack Master packages. This will take some time..."
7 echo "---------------------------------------------------------------------------------------"
8 echo
9 # create the cache directory if it doesn't exist
10 [[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY
11 # set OPNFV_ARTIFACT_VERSION
12 if echo $BUILD_TAG | grep "apex-verify" 1> /dev/null; then
13   if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
14     export OPNFV_ARTIFACT_VERSION=brahmaputra-dev${BUILD_NUMBER}
15     export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
16   else
17     export OPNFV_ARTIFACT_VERSION=dev${BUILD_NUMBER}
18     export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY"
19   fi
20 elif [ "$ARTIFACT_VERSION" == "daily" ]; then
21   if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
22     export OPNFV_ARTIFACT_VERSION=brahmaputra-$(date -u +"%Y-%m-%d")
23     export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
24   else
25     export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d")
26     export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY --iso"
27   fi
28 else
29   export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION}
30   if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
31     export BUILD_ARGS="-v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY"
32   else
33     export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY --iso"
34   fi
35 fi
36 # clean for stable but doesn't matter for master
37 if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
38   sudo opnfv-clean
39 fi
40 # start the build
41 cd $WORKSPACE/ci
42 ./build.sh $BUILD_ARGS
43 RPM_VERSION=$(grep Version: $BUILD_DIRECTORY/opnfv-apex.spec | awk '{ print $2 }')-$(echo $OPNFV_ARTIFACT_VERSION | tr -d '_-')
44 # list the contents of BUILD_OUTPUT directory
45 ls -al $BUILD_DIRECTORY
46 # save information regarding artifact into file
47 (
48     echo "OPNFV_ARTIFACT_VERSION=$OPNFV_ARTIFACT_VERSION"
49     echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
50     echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
51     echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"
52     echo "OPNFV_ARTIFACT_MD5SUM=$(md5sum $BUILD_DIRECTORY/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)"
53     echo "OPNFV_SRPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.src.rpm"
54     echo "OPNFV_RPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.noarch.rpm"
55     echo "OPNFV_RPM_MD5SUM=$(md5sum $BUILD_DIRECTORY/noarch/opnfv-apex-$RPM_VERSION.noarch.rpm | cut -d' ' -f1)"
56     echo "OPNFV_BUILD_URL=$BUILD_URL"
57 ) > $WORKSPACE/opnfv.properties
58 echo "--------------------------------------------------------"
59 echo "Done!"