diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e0bd25ab0b2479dd69c689709f0342fae0eed9db..4957480ff898898e5b997989b145ee75c959de6e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -97,7 +97,7 @@ spack:install_compilers:
   extends:
     - .parallel_job
   script:
-    - COMPILER_LIST_SPECS=$(jq -r '.stack.compilers | map("\(.spec)@\(.version)")[]' config.json)
+    - COMPILER_LIST_SPECS=$(jq -r '.stack | .core_compiler as $core | .compilers | map("\(.spec)@\(.version) %\($core)")[]' config.json)
     - /spack/spack/bin/spack install
       --log-file spack-install.xml
       --log-format junit
@@ -106,6 +106,7 @@ spack:install_compilers:
       --use-cache
       ${COMPILER_LIST_SPECS}
 
+    - /spack/spack/bin/spack buildcache create --update-index --signed scitas-buildcache ${COMPILER_LIST_SPECS}
     - |
       echo 'definitions: [ compilers: [' ${COMPILER_LIST_SPECS} ']]' > compiler_definitions.yaml
 
diff --git a/config.json b/config.json
index 5d0022a92502bcd1e0103069e235b0d4e623f6b6..f18db4e86dc5cb8c7b8539e705462d03058c909a 100644
--- a/config.json
+++ b/config.json
@@ -13,6 +13,7 @@
         }
     },
     "stack": {
+        "core_compiler": "gcc@11.4.1 arch=linux-rhel9-x86_64_v2",
         "compilers": {
             "gcc": { "spec": "gcc", "version": "12.2.0" },
             "intel": { "spec": "intel-oneapi-compilers", "version": "2023.2.1" }