summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-02-04 00:32:53 +0100
committerFatih Degirmenci <fatih.degirmenci@ericsson.com>2016-02-04 10:16:13 +0100
commitac4b17fdd6354213790cd42423d83f97af6e7f6b (patch)
treed681050e109c80e34a6e39e93ca4ee3474524509
parentc8b335d3415be02c8f1539f058a60dfafc557218 (diff)
fuel: Store ISOs locally so we skip the download if they exist locally
Change-Id: Ief7fcb819d33355a75b4e6c4dc5d8b4eadea61d7 Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
-rwxr-xr-xjjb/fuel/fuel-download-artifact.sh26
-rwxr-xr-xjjb/fuel/fuel-upload-artifact.sh25
2 files changed, 36 insertions, 15 deletions
diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh
index a3769b112..ceac859dd 100755
--- a/jjb/fuel/fuel-download-artifact.sh
+++ b/jjb/fuel/fuel-download-artifact.sh
@@ -8,7 +8,6 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
set -o errexit
-set -o nounset
set -o pipefail
if [[ "$JOB_NAME" =~ "merge" ]]; then
@@ -31,15 +30,22 @@ source latest.properties
OPNFV_ARTIFACT=${OPNFV_ARTIFACT_URL/*\/}
echo "Using $OPNFV_ARTIFACT for deployment"
-# check if we already have the ISO to avoid redownload
-# disabled for the timebeing - needs adjustments
-#ISO_STORE=$HOME/opnfv/iso_store/fuel
-#if [[ -f "$ISO_STORE/$OPNFV_ARTIFACT" ]]; then
-# echo "ISO already exists. Skipping the download"
-# ln -s $ISO_STORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso
-# ls -al $WORKSPACE/opnfv.iso
-# exit 0
-#fi
+# using ISOs for verify & merge jobs from local storage will be enabled later
+if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then
+ # check if we already have the ISO to avoid redownload
+ ISOSTORE="/iso_mount/opnfv_ci/${GIT_BRANCH##*/}"
+ if [[ -f "$ISOSTORE/$OPNFV_ARTIFACT" ]]; then
+ echo "ISO exists locally. Skipping the download and using the file from ISO store"
+ /bin/cp -f $ISOSTORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso
+ echo "--------------------------------------------------------"
+ echo
+ ls -al $WORKSPACE/opnfv.iso
+ echo
+ echo "--------------------------------------------------------"
+ echo "Done!"
+ exit 0
+ fi
+fi
# log info to console
echo "Downloading the $INSTALLER_TYPE artifact using URL http://$OPNFV_ARTIFACT_URL"
diff --git a/jjb/fuel/fuel-upload-artifact.sh b/jjb/fuel/fuel-upload-artifact.sh
index cf74eb459..6dd5f34d6 100755
--- a/jjb/fuel/fuel-upload-artifact.sh
+++ b/jjb/fuel/fuel-upload-artifact.sh
@@ -7,7 +7,6 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-set -o nounset
set -o pipefail
# check if we built something
@@ -17,14 +16,30 @@ if [ -f $WORKSPACE/.noupload ]; then
exit 0
fi
+# source the opnfv.properties to get ARTIFACT_VERSION
+source $WORKSPACE/opnfv.properties
+
+# storing ISOs for verify & merge jobs will be done once we get the disk array
+if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then
+ # store ISO locally on NFS first
+ ISOSTORE="/iso_mount/opnfv_ci/${GIT_BRANCH##*/}"
+ if [[ -d "$ISOSTORE" ]]; then
+ # remove all but most recent 5 ISOs first to keep iso_mount clean & tidy
+ cd $ISOSTORE
+ ls -tp | grep -v '/' | tail -n +6 | xargs -d '\n' /bin/rm -f --
+
+ # store ISO
+ echo "Storing $INSTALLER_TYPE artifact on NFS first"
+ /bin/cp -f $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \
+ $ISOSTORE/opnfv-$OPNFV_ARTIFACT_VERSION.iso
+ fi
+fi
+
# log info to console
echo
-echo "Uploading the $INSTALLER_TYPE artifact. This could take some time..."
+echo "Uploading $INSTALLER_TYPE artifact. This could take some time..."
echo
-# source the opnfv.properties to get ARTIFACT_VERSION
-source $WORKSPACE/opnfv.properties
-
# upload artifact and additional files to google storage
gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \
gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log 2>&1