From 208efcba6d3c4748e0667fe1554a86bed0017e2f Mon Sep 17 00:00:00 2001
From: Nicolas Richart <nicolas.richart@epfl.ch>
Date: Tue, 23 Jul 2024 14:45:41 +0200
Subject: [PATCH] Spliting images per pipeline to avoid cross contamination

---
 ci/apptainer_by_hand.sh |  4 ++--
 ci/prepare_squashfs.sh  | 10 ++++++----
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/ci/apptainer_by_hand.sh b/ci/apptainer_by_hand.sh
index c6a4aa3..ba95ef6 100755
--- a/ci/apptainer_by_hand.sh
+++ b/ci/apptainer_by_hand.sh
@@ -9,7 +9,7 @@ export stack=pinot-noir
 export environment=kuma_h100
 
 export SQUASHFS_ID=local
-export CI_JOB_ID=1337
+export CI_PIPELINE_ID=1337
 
 export FAKEHOME="/scratch/$(id -un)"
 
@@ -19,7 +19,7 @@ export MOUNT_POINT=$(jq -Mrc .stack.mount_point ${CI_PROJECT_DIR}/stacks/${stack
 export STACK_VERSION=$(jq -Mrc .stack.version ${CI_PROJECT_DIR}/stacks/${stack}/config.json)
 
 APPTAINER_IMAGE=~/rhel9-kuma.sif
-image_name=${stack}-${environment}-${SQUASHFS_ID}
+image_name=${stack}-${environment}-${SQUASHFS_ID}-${CI_PIPELINE_ID}
 squashfs_image=$(ls -t1 ${CI_DATA_LT}/squashfs-cache/${image_name}*.sqfs 2> /dev/null | head -1)
 #./ci/prepare_squashfs.sh
 
diff --git a/ci/prepare_squashfs.sh b/ci/prepare_squashfs.sh
index 9f2fee1..ed5f5b3 100755
--- a/ci/prepare_squashfs.sh
+++ b/ci/prepare_squashfs.sh
@@ -14,9 +14,11 @@ do
 done
 
 
+image_name=${stack}-${environment}-${squash_id}-${CI_PIPELINE_ID}
+
 set +o errexit
 # Check if MR as squashfs
-sqfs_image=$(ls -t1 ${CI_DATA_LT}/squashfs-cache/${stack}-${environment}-${squash_id}*.sqfs 2> /dev/null | head -1)
+sqfs_image=$(ls -t1 ${CI_DATA_LT}/squashfs-cache/${image_name}.sqfs 2> /dev/null | head -1)
 if [ $? -ne 0 ]
 then
     echo "No MR ($squash_id) squashfs found"
@@ -36,7 +38,7 @@ then
     set -o errexit
 
     # Link MR sqaushfs to the one of default branch
-    sqfs_image=${CI_DATA_LT}/squashfs-cache/${stack}-${environment}-${squash_id}.sqfs
+    sqfs_image=${CI_DATA_LT}/squashfs-cache/${image_name}.sqfs
 
     cd ${CI_DATA_LT}/squashfs-cache
     ln -sf $(basename ${sqfs_base_image}) $(basename ${sqfs_image})
@@ -45,10 +47,10 @@ then
     echo "Linking ${sqfs_image} -> ${sqfs_base_image}"
 else
     set -o errexit
-    if [ ${sqfs_image} != ${CI_DATA_LT}/squashfs-cache/${stack}-${environment}-${squash_id}.sqfs ];
+    if [ ${sqfs_image} != ${CI_DATA_LT}/squashfs-cache/${image_name}.sqfs ];
     then
         cd ${CI_DATA_LT}/squashfs-cache
-        ln -sf $(basname ${sqfs_image}) ${stack}-${environment}-${squash_id}.sqfs
+        ln -sf $(basname ${sqfs_image}) ${image_name}.sqfs
         cd
     fi
     echo "Found ${sqfs_image}"
-- 
GitLab