From 6d7c85ed13f4e2ba17d9d112416fa1fd0c248e8f Mon Sep 17 00:00:00 2001
From: Athanasios Karmas <karmas@athenarc.gr>
Date: Fri, 11 Feb 2022 14:08:52 +0100
Subject: [PATCH] created scheduled jobs for the experimental release for cscs
 and jsc

---
 .gitlab-ci.yml | 85 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 84 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 33e4ead4..2a60006e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -106,7 +106,8 @@ deploy-prod-release-prod-jsc:
       allow_failure: false
 
 # Deploy the experimental release of tools (sheduled pipeline)
-# once a week from integration release (master) to an experimental JupyterLab kernel
+# once a week from latest working version of integration release 
+# (branch=experimental_release) to an experimental JupyterLab kernel
 # deploy on the dev environment of the okd dev cluster at CSCS
 # runs on protected branches only as the token variable is protected
 deploy-exp-release-dev-cscs:
@@ -144,3 +145,85 @@ deploy-exp-release-dev-cscs:
     variables:
       - $RELEASE == "experimental"
   allow_failure: false
+
+# Deploy the experimental release of tools (sheduled pipeline)
+# once a week from latest working version of integration release 
+# (branch=experimental_release) to an experimental JupyterLab kernel
+# deploy on the prod environment of the okd prod cluster at CSCS
+# runs on protected branches only as the token variable is protected
+deploy-exp-release-prod-cscs:
+  extends: .deploy-build-environment
+  variables:
+    OPENSHIFT_SERVER: $CSCS_OPENSHIFT_PROD_SERVER
+    OPENSHIFT_TOKEN: $CSCS_OPENSHIFT_PROD_TOKEN
+    INSTALLATION_ROOT: $CSCS_INSTALLATION_ROOT_PROD
+    SPACKIFIED_ENV: experimental
+    OP: update
+    BUILD_ENV_DOCKER_IMAGE: $CSCS_BUILD_ENV_DOCKER_IMAGE_PROD
+    LAB_KERNEL_PATH: /srv/jupyterlab_kernels/prod/experimental
+    OKD_CLUSTER_UID: $CSCS_OKD_PROD_UID
+    #SPACK_ENV_TAR_FILE: ebrains-spack-builds${CI_PIPELINE_ID}.tar.gz
+    SPACK_ENV_TAR_FILE: ebrains-spack-builds.tar.gz
+    OC_PROJECT: jupyterhub
+  before_script:
+    - | 
+        head -n -9 create_JupyterLab_kernel.sh > tmp.txt && mv tmp.txt create_JupyterLab_kernel.sh
+        cat << EOS >> create_JupyterLab_kernel.sh
+        mkdir \$LAB_KERNEL_PATH/experimental_release
+        cat <<EOF >\$LAB_KERNEL_PATH/experimental_release/kernel.json
+        {
+         "argv": ["\$LAB_KERNEL_PATH/bin/env.sh", "{connection_file}", "--profile=default"],
+         "display_name": "EBRAINS_experimental_release",
+         "name": "experimental_release",
+         "language": "python"
+        }
+        EOF
+        EOS
+  resource_group: shared-NFS-mount-prod-cscs
+  only:
+    refs:
+      - schedules
+    variables:
+      - $RELEASE == "experimental"
+  allow_failure: false
+
+# Deploy the experimental release of tools (sheduled pipeline)
+# once a week from latest working version of integration release 
+# (branch=experimental_release) to an experimental JupyterLab kernel
+# deploy on the prod environment of the okd prod cluster at JSC
+# runs on protected branches only as the token variable is protected
+deploy-exp-release-prod-jsc:
+  extends: .deploy-build-environment
+  variables:
+    OPENSHIFT_SERVER: $JSC_OPENSHIFT_PROD_SERVER
+    OPENSHIFT_TOKEN: $JSC_OPENSHIFT_PROD_TOKEN
+    INSTALLATION_ROOT: $JSC_INSTALLATION_ROOT_PROD
+    SPACKIFIED_ENV: experimental
+    OP: update
+    BUILD_ENV_DOCKER_IMAGE: $JSC_BUILD_ENV_DOCKER_IMAGE_PROD
+    LAB_KERNEL_PATH: /srv/jupyterlab_kernels/prod/experimental
+    OKD_CLUSTER_UID: $JSC_OKD_PROD_UID
+    #SPACK_ENV_TAR_FILE: ebrains-spack-builds${CI_PIPELINE_ID}.tar.gz
+    SPACK_ENV_TAR_FILE: ebrains-spack-builds.tar.gz
+    OC_PROJECT: jupyterhub
+  before_script:
+    - | 
+        head -n -9 create_JupyterLab_kernel.sh > tmp.txt && mv tmp.txt create_JupyterLab_kernel.sh
+        cat << EOS >> create_JupyterLab_kernel.sh
+        mkdir \$LAB_KERNEL_PATH/experimental_release
+        cat <<EOF >\$LAB_KERNEL_PATH/experimental_release/kernel.json
+        {
+         "argv": ["\$LAB_KERNEL_PATH/bin/env.sh", "{connection_file}", "--profile=default"],
+         "display_name": "EBRAINS_experimental_release",
+         "name": "experimental_release",
+         "language": "python"
+        }
+        EOF
+        EOS
+  resource_group: shared-NFS-mount-prod-jsc
+  only:
+    refs:
+      - schedules
+    variables:
+      - $RELEASE == "experimental"
+  allow_failure: false
-- 
GitLab