From df34af8a86b5bf0def61e916ec584b800bdca4e7 Mon Sep 17 00:00:00 2001
From: Domenico Giordano <domenico.giordano@cern.ch>
Date: Mon, 15 Jul 2019 08:49:33 +0000
Subject: [PATCH] BMK-122 Update main.sh, check failures of test singularity
 and remove images created by singularity

---
 build-executor/main.sh | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/build-executor/main.sh b/build-executor/main.sh
index 47079c90..c64cc7b7 100755
--- a/build-executor/main.sh
+++ b/build-executor/main.sh
@@ -333,14 +333,28 @@ function test_standalone_image_singularity(){
     singularityregistry="${CIENV_DOCKERREGISTRY}"
     theimage="${HEPWL_DOCKERIMAGENAME}":"${HEPWL_DOCKERIMAGETAG}"
     echo "[test_standalone_image_singularity] docker tag ${singularityregistry}/${theimage} ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity"
-    docker tag ${singularityregistry}/${theimage} ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity || fail "[test_standalone_image_singularity] docker tag"
-    echo $CI_BUILD_TOKEN | docker login -u gitlab-ci-token --password-stdin gitlab-registry.cern.ch || fail "[test_standalone_image_singularity] docker login"
+    if ! docker tag ${singularityregistry}/${theimage} ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity ; then
+        docker rmi -f ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity #BMK-122
+        fail "[test_standalone_image_singularity] docker tag"
+    fi
+    if ! echo $CI_BUILD_TOKEN | docker login -u gitlab-ci-token --password-stdin gitlab-registry.cern.ch ; then
+        docker rmi -f ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity #BMK-122
+        fail "[test_standalone_image_singularity] docker login"
+    fi
     echo "[test_standalone_image_singularity] docker push ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity"
-    docker push ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity
+    if ! docker push ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity ; then
+        docker rmi -f ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity #BMK-122
+        fail "[test_standalone_image_singularity] docker push ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity"
+    fi
     echo -e "\n[test_standalone_image_singularity] Run WL in singularity (to test the image) via execute_command - started"
-    execute_command docker run --privileged --network=host -v ${CIENV_JOBDIR}/results:/results ${singularityregistry}/singularity-executor singularity run -B /results:/results docker://${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity $HEPWL_BMKOPTS || fail "[test_standalone_image_singularity] singularity run -B $CIENV_JOBDIR/results:/results ${HEPWL_DOCKERIMAGENAME}:ci_singularity $HEPWL_BMKOPTS"
+    if ! execute_command docker run --privileged --network=host -v ${CIENV_JOBDIR}/results:/results ${singularityregistry}/singularity-executor singularity run -B /results:/results docker://${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity $HEPWL_BMKOPTS || fail "[test_standalone_image_singularity] singularity run -B $CIENV_JOBDIR/results:/results ${HEPWL_DOCKERIMAGENAME}:ci_singularity $HEPWL_BMKOPTS"; then
+        docker rmi -f ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity #BMK-122
+        fail "[test_standalone_image_singularity] Run WL in singularity"
+    fi
     echo -e "[test_standalone_image_singularity] Run WL in singularity (to test the image) via execute_command - completed\n"
+    
   fi
+  docker rmi -f ${singularityregistry}/${HEPWL_DOCKERIMAGENAME}:test_ci_singularity #BMK-122
   echo "[test_standalone_image_singularity] finished at $(date)"
   return 0
 }
-- 
GitLab