From 319ddf85214c0737494b26934eb7e6bb347dd410 Mon Sep 17 00:00:00 2001
From: Lars Bilke <lars.bilke@ufz.de>
Date: Wed, 14 Dec 2022 21:21:12 +0100
Subject: [PATCH] [ci] Pipeline variable CTEST_INCLUDE_REGEX.

---
 .gitlab-ci.yml                              | 1 +
 scripts/ci/extends/template-build-linux.yml | 7 ++++++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a785baa692b..642033997e2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -10,6 +10,7 @@ variables:
   BUILD_TYPE: Release
   BUILD_TESTS: "true"
   BUILD_CTEST: "true"
+  CTEST_INCLUDE_REGEX: "" # Regex is given via ctest -R [regex]
   CPU_TARGET: ivybridge # envinf1 has oldest cpu
   ARTIFACTS_PAGES_URL: https://$CI_PROJECT_ROOT_NAMESPACE.$CI_PAGES_DOMAIN/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts
 
diff --git a/scripts/ci/extends/template-build-linux.yml b/scripts/ci/extends/template-build-linux.yml
index af4dbed25c5..8ce8e851798 100644
--- a/scripts/ci/extends/template-build-linux.yml
+++ b/scripts/ci/extends/template-build-linux.yml
@@ -45,9 +45,14 @@
             xvfb_run_cmd="xvfb-run -a"
           fi
 
+          regex_argument=""
+          if [[ ! -z "$CTEST_INCLUDE_REGEX" ]]; then
+            regex_argument="-R ${CTEST_INCLUDE_REGEX}"
+          fi
+
           # -M Continuous does not run any tests -> -M Experimental --group Continuous
           # --test-dir has to be provided despite using a preset
-          ${xvfb_run_cmd} ctest -M Experimental --group Continuous --test-dir ${build_dir_full} -T Test -T Submit --preset=${CMAKE_PRESET}${preset_postfix} --output-junit Tests/ctest.xml --stop-time `date -d "today + ${ctest_timeout} minutes" +'%H:%M:%S'` ${CTEST_ARGS}
+          ${xvfb_run_cmd} ctest -M Experimental ${regex_argument} --group Continuous --test-dir ${build_dir_full} -T Test -T Submit --preset=${CMAKE_PRESET}${preset_postfix} --output-junit Tests/ctest.xml --stop-time `date -d "today + ${ctest_timeout} minutes" +'%H:%M:%S'` ${CTEST_ARGS}
         fi
 
       else
-- 
GitLab