From 3288437c0736478fa009cd77940e17f2561e44fd Mon Sep 17 00:00:00 2001
From: Lorenzo Pagliai <lorenzo.pagliai@seco.com>
Date: Fri, 24 Mar 2023 10:21:15 +0100
Subject: [PATCH] [CACHE] Set rule to use separate caches for things and
 embedded distros

* Separate caches folder to be used for the two distros
* Avoid using cache and downloads for tagged builds
* Reduce expiration policy of the build to 24 hours
---
 manifest-pipeline-yocto.yml | 37 +++++++++++++++++++++++--------------
 1 file changed, 23 insertions(+), 14 deletions(-)

diff --git a/manifest-pipeline-yocto.yml b/manifest-pipeline-yocto.yml
index 0ccfc29..35cdd14 100644
--- a/manifest-pipeline-yocto.yml
+++ b/manifest-pipeline-yocto.yml
@@ -161,8 +161,7 @@ retrigger:
   - /usr/bin/restrict_useradd.sh 1002 1002 $NEWUS
   - groupadd edgehog -g 1023
   - usermod -a -G edgehog $NEWUS
-  - chown -R :edgehog /var/cache/edgehog_downloads 
-  - chown -R :edgehog /var/cache/edgehog_sstate-imx6 /var/cache/edgehog_sstate-imx8 /var/cache/edgehog_sstate-rk /var/cache/edgehog_sstate-intel
+  - chown -R :edgehog /var/cache/edgehog_*
   - chsh -s /bin/bash $NEWUS
   - su $NEWUS
 
@@ -219,17 +218,27 @@ retrigger:
         repo sync -j$(nproc) --fetch-submodules;
         . ./seco-setup.sh -d ${DEFCONFIG_FILE};
         . ./seco-setup.sh -c;
-        sed -i -e '/DL_DIR ?=/d' conf/local.conf;
-        echo 'DL_DIR = \"/var/cache/edgehog_downloads\"' >> conf/local.conf;
-        if [[ $PROCESSOR == *imx6* ]]; 
-          then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx6\"' >> conf/local.conf;
-        elif [[ $PROCESSOR == *imx8* ]];
-          then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx8\"' >> conf/local.conf;
-        elif [[ $PROCESSOR == *rk* ]];
-          then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-rk\"' >> conf/local.conf;
-        elif [[ $PROCESSOR == *intel* ]];
-          then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-intel\"' >> conf/local.conf;
-        fi
+        if [ ! -n "$CI_COMMIT_TAG" ]; then;
+            sed -i -e '/DL_DIR ?=/d' conf/local.conf;
+            echo 'DL_DIR = \"/var/cache/edgehog_downloads\"' >> conf/local.conf;
+            if [[ $PROCESSOR == *imx6* && "$CI_JOB_NAME" != *"embedded"* ]]; 
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx6\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *imx8* && "$CI_JOB_NAME" != *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx8\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *rk* && "$CI_JOB_NAME" != *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-rk\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *intel* && "$CI_JOB_NAME" != *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-intel\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *imx6* && "$CI_JOB_NAME" == *"embedded"* ]]; 
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx6-embedded\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *imx8* && "$CI_JOB_NAME" == *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-imx8-embedded\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *rk* && "$CI_JOB_NAME" == *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-rk-embedded\"' >> conf/local.conf;
+            elif [[ $PROCESSOR == *intel* && "$CI_JOB_NAME" == *"embedded"* ]];
+              then echo 'SSTATE_DIR = \"/var/cache/edgehog_sstate-intel-embedded\"' >> conf/local.conf;
+            fi;
+        fi; 
         echo '###############################'
         echo '#### Displaying local.conf ####'
         echo '###############################'
@@ -260,7 +269,7 @@ retrigger:
         fi
 
   artifacts:
-     expire_in: 1 week
+     expire_in: 24 hrs
      paths:
       - $BUILD_DIRECTORY/$IMAGES_PATH/$MACHINE/
       - pathname.txt
-- 
GitLab