From d52615254a488a5b69a073962b9d78fc652c00bb Mon Sep 17 00:00:00 2001
From: Sebastian Achilles <s.achilles@fz-juelich.de>
Date: Wed, 16 Nov 2022 19:41:48 +0100
Subject: [PATCH] add additinal CI check for all easyconfigs that can be
 triggered manually

---
 .gitlab-ci.yml | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b8cdee92a..4b5025f81 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -58,3 +58,39 @@ check_style:
     - fi
     - done
     - if [ -n "$faulty" ]; then echo "Faulty EasyConfigs... $faulty"; exit 1; fi
+
+full_check_style:
+  when: manual
+  script:
+    - export SYSTEMNAME="juwelsbooster" # Make this the default for packages like NVHPC
+    - export EASYBUILD_INCLUDE_EASYBLOCKS="$CI_PROJECT_DIR/Custom_EasyBlocks/*.py,$CI_PROJECT_DIR/Custom_EasyBlocks/generic/*.py"
+    - export EASYBUILD_INCLUDE_MODULE_NAMING_SCHEMES="$CI_PROJECT_DIR/Custom_MNS/*.py"
+    - export EASYBUILD_INCLUDE_TOOLCHAINS="$CI_PROJECT_DIR/Custom_Toolchains/*.py"
+    - export EASYBUILD_ROBOT="$CI_PROJECT_DIR/Golden_Repo"
+    - export EASYBUILD_HOOKS="$CI_PROJECT_DIR/Custom_Hooks/eb_hooks.py"
+    # Let's make this a system where all the packages can be installed, so all of them can be checked without aborting
+    - export LMOD_SYSTEM_NAME="juwels"
+    - OVERLAYS=$(ls Overlays)
+    - for i in $OVERLAYS; do
+    - export EASYBUILD_ROBOT="$EASYBUILD_ROBOT:$CI_PROJECT_DIR/Overlays/$i"
+    - done
+    - export EASYBUILD_MODULE_NAMING_SCHEME="FlexibleCustomHierarchicalMNS"
+    - export EASYBUILD_MODULECLASSES="astro,base,bio,cae,chem,compiler,data,debugger,devel,"
+    - export EASYBUILD_MODULECLASSES=$EASYBUILD_MODULECLASSES"geo,ide,lang,lib,math,mpi,numlib,perf,phys,quantum,sidecompiler,"
+    - export EASYBUILD_MODULECLASSES=$EASYBUILD_MODULECLASSES"system,toolchain,tools,vis"
+    - export EASYBUILD_CUDA_COMPUTE_CAPABILITIES="8.0"
+    - for i in $(find Golden_Repo -name "*.eb"); do
+    - echo "Checking $(basename $i) ..."
+    - if [[ $(basename $i) == *AMBER* ]]; then
+    - sg amber -c "eb --check-style --check-contrib $i" || faulty="$faulty $i"
+    - elif [[ $(basename $i) == *CPMD* ]]; then
+    - sg cpmd -c "eb --check-style --check-contrib $i" || faulty="$faulty $i"
+    - elif [[ $(basename $i) == *NAMD* ]]; then
+    - sg namd -c "eb --check-style --check-contrib $i" || faulty="$faulty $i"
+    - elif [[ $(basename $i) == *Turbomole* ]]; then
+    - sg turbomol -c "eb --check-style --check-contrib $i" || faulty="$faulty $i"
+    - else
+    - eb --check-style --check-contrib $i || faulty="$faulty $i"
+    - fi
+    - done
+    - if [ -n "$faulty" ]; then echo "Faulty EasyConfigs... $faulty"; exit 1; fi
-- 
GitLab