barometer: update nightly build 27/41527/1
authorMaryam Tahhan <maryam.tahhan@intel.com>
Mon, 11 Sep 2017 12:13:21 +0000 (13:13 +0100)
committerMaryam Tahhan <maryam.tahhan@intel.com>
Mon, 11 Sep 2017 12:15:14 +0000 (13:15 +0100)
Update nightly build to only push the RPMs if they all exist. Also, only
push the properties files if all the RPM pushes are successful.

Change-Id: Ied64e203504ae6092c6ea3d21b474649584860ac
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
jjb/barometer/barometer-upload-artifact.sh

index 817cc57..08c64ba 100644 (file)
@@ -2,6 +2,7 @@
 set -o nounset
 set -o pipefail
 
+RPM_LIST=$WORKSPACE/ci/utilities/rpms_list
 RPM_WORKDIR=$WORKSPACE/rpmbuild
 RPM_DIR=$RPM_WORKDIR/RPMS/x86_64/
 cd $WORKSPACE/
@@ -9,9 +10,32 @@ cd $WORKSPACE/
 # source the opnfv.properties to get ARTIFACT_VERSION
 source $WORKSPACE/opnfv.properties
 
-# upload property files
-gsutil cp $WORKSPACE/opnfv.properties gs://$OPNFV_ARTIFACT_URL/opnfv.properties > gsutil.properties.log 2>&1
-gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1
+# Check if all the appropriate RPMs were generated
+echo "Checking if all the Barometer RPMs were created"
+echo "-----------------------------------------------"
+echo
+
+if [ -d $RPM_DIR]
+then
+    ls $RPM_DIR > list_of_gen_pack
+else
+    echo "Can't access folder $RPM_DIR with rpm packages"
+    echo "Barometer nightly build FAILED"
+    exit 1
+fi
+
+for PACKAGENAME in `cat $RPM_LIST`
+do
+        if ! grep -q $PACKAGENAME list_of_gen_pack
+        then
+                echo "$PACKAGENAME is missing"
+                echo "Barometer nightly build FAILED"
+                exit 2
+        fi
+done
+
+#remove the file you no longer need.
+rm list_of_gen_pack
 
 echo "Uploading the barometer RPMs to artifacts.opnfv.org"
 echo "---------------------------------------------------"
@@ -25,6 +49,10 @@ if [[ $? -ne 0 ]]; then
   echo "Problem while uploading barometer RPMs to gs://$OPNFV_ARTIFACT_URL!"
   echo "Check log $WORKSPACE/gsutil.log on the appropriate build server"
   exit 1
+else
+  # upload property files only if build is successful
+  gsutil cp $WORKSPACE/opnfv.properties gs://$OPNFV_ARTIFACT_URL/opnfv.properties > gsutil.properties.log 2>&1
+  gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1
 fi
 
 gsutil -m setmeta \