]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Run system tests on all platforms on MR that touches system tests
authorŠtěpán Balážik <stepan@isc.org>
Wed, 5 Nov 2025 10:19:04 +0000 (11:19 +0100)
committerŠtěpán Balážik <stepan@isc.org>
Thu, 6 Nov 2025 08:21:40 +0000 (09:21 +0100)
Not doing this has lead to breakage caused by different dnspython
versions on different platforms only discovered in full nightly
pipelines.

Add a triggering rule for MRs changing code in bin/test/system.
Apply this rule to all nightly-only system test jobs.

.gitlab-ci.yml

index a4f95c063a9769a3431394545abd77d5b0fa6924..af9da14ff36ec238cdca01cb246903d6a9e214c9 100644 (file)
@@ -298,6 +298,11 @@ stages:
     changes:
       - '**/*.py'
 
+.rule_mr_system_tests: &rule_mr_system_tests
+  - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null'
+    changes:
+      - 'bin/tests/system/**'
+
 .rule_mr_manual: &rule_mr_manual
   - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null'
     when: manual  # only run on MR if requested
@@ -355,6 +360,12 @@ stages:
     - *rule_tag
     - *rule_source_other_than_mr
 
+.extra-system-tests-triggering-rules: &extra_system_tests_triggering_rules
+  rules:
+    - *rule_tag
+    - *rule_source_other_than_mr
+    - *rule_mr_system_tests
+
 .precheck: &precheck_job
   <<: *default_triggering_rules
   <<: *base_image
@@ -970,6 +981,7 @@ gcc:almalinux8:amd64:
 system:gcc:almalinux8:amd64:
   <<: *almalinux_8_amd64_image
   <<: *system_test_job
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: gcc:almalinux8:amd64
       artifacts: true
@@ -1046,7 +1058,7 @@ gcc:8fips:amd64:
 system:gcc:8fips:amd64:
   <<: *almalinux_8fips_amd64_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   variables:
     GIT_CLONE_PATH: "${GIT_CLONE_PATH_INSTANCE_EXECUTOR}"
   needs:
@@ -1075,7 +1087,7 @@ gcc:9fips:amd64:
 system:gcc:9fips:amd64:
   <<: *almalinux_9fips_amd64_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   variables:
     GIT_CLONE_PATH: "${GIT_CLONE_PATH_INSTANCE_EXECUTOR}"
   needs:
@@ -1282,7 +1294,7 @@ gcc:sid:amd64:
 system:gcc:sid:amd64:
   <<: *debian_sid_amd64_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: gcc:sid:amd64
       artifacts: true
@@ -1370,7 +1382,7 @@ gcc:jammy:amd64:
 system:gcc:jammy:amd64:
   <<: *ubuntu_jammy_amd64_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: gcc:jammy:amd64
       artifacts: true
@@ -1446,7 +1458,7 @@ system:clang:asan:
     LSAN_OPTIONS: "suppressions=$CI_PROJECT_DIR/suppr-lsan.txt"
   <<: *base_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: clang:asan
       artifacts: true
@@ -1475,7 +1487,7 @@ system:gcc:tsan:
     TSAN_OPTIONS: "${TSAN_OPTIONS_FEDORA}"
   <<: *tsan_fedora_42_amd64_image
   <<: *system_test_tsan_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: gcc:tsan
       artifacts: true
@@ -1561,7 +1573,7 @@ clang:trixie:amd64:
 system:clang:trixie:amd64:
   <<: *debian_trixie_amd64_image
   <<: *system_test_job
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: clang:trixie:amd64
       artifacts: true
@@ -1583,7 +1595,7 @@ clang:freebsd13:amd64:
 system:clang:freebsd13:amd64:
   <<: *system_test_job
   <<: *freebsd_autoscaler_13_amd64
-  <<: *api_pipelines_schedules_tags_triggers_web_triggering_rules
+  <<: *extra_system_tests_triggering_rules
   needs:
     - job: clang:freebsd13:amd64
       artifacts: true