From 3b048c5a3dbdcf7b3e83038595c4bca3a45ac54b Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Wed, 13 May 2026 11:44:26 +0200 Subject: [PATCH 1/3] Selectively inherit yaml vars in stress trigger jobs The parent's global RUNNER_SCRIPT_TIMEOUT: 55m was reaching the stress and tsan:stress child pipelines via inherited yaml variables, where inherited values outrank the child's job-level variables. That caused stress jobs with BIND_STRESS_TESTS_RUN_TIME >= 60 to be killed at 55 minutes, regardless of the per-job RUNNER_SCRIPT_TIMEOUT set in the generated child config. Use inherit:variables with a positive list on both trigger jobs: inherit only CI_REGISTRY_IMAGE so the parent's registry override (needed for image pulls in the child) flows through, while keeping RUNNER_SCRIPT_TIMEOUT (and other globals) out of the child pipeline's variable scope. The per-job RUNNER_SCRIPT_TIMEOUT values set by the generated child config now take effect. Assisted-by: Claude:claude-opus-4-7 (cherry picked from commit 73915b73d194c371200ea20d129e3412cf2faa6a) --- .gitlab-ci.yml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2dbeef1853..3575787873 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1816,6 +1816,13 @@ unit:clang:tsan: tsan:stress: <<: *default_triggering_rules stage: system + # In a downstream pipeline, yaml variables inherited from the parent outrank + # the child's job-level `variables:` block. Inherit only what the child + # actually needs (image lookup), so the parent's RUNNER_SCRIPT_TIMEOUT does + # not override the per-job values set in the generated child config. + inherit: + variables: + - CI_REGISTRY_IMAGE variables: PARENT_PIPELINE_ID: $CI_PIPELINE_ID trigger: @@ -2569,6 +2576,13 @@ shotgun:doh-get: stress-test-child-pipeline: <<: *default_triggering_rules stage: performance + # In a downstream pipeline, yaml variables inherited from the parent outrank + # the child's job-level `variables:` block. Inherit only what the child + # actually needs (image lookup), so the parent's RUNNER_SCRIPT_TIMEOUT does + # not override the per-job values set in the generated child config. + inherit: + variables: + - CI_REGISTRY_IMAGE rules: - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null' changes: From 41d128bbf1857a383500497071c213d1576e55cc Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Wed, 13 May 2026 19:01:44 +0200 Subject: [PATCH 2/3] Inherit global CONFIGURE variable for stress tests CONFIGURE is needed to build BIND 9 stress tests of 9.20 and 9.18 branches. --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3575787873..33de4de247 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2583,6 +2583,7 @@ stress-test-child-pipeline: inherit: variables: - CI_REGISTRY_IMAGE + - CONFIGURE rules: - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null' changes: From 2ce5c1e4ae4bb8ef154116cac260f9168e14ff19 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Wed, 13 May 2026 21:06:41 +0200 Subject: [PATCH 3/3] Inherit global TSAN_* variables for tsan stress jobs --- .gitlab-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 33de4de247..4c90de77da 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1823,6 +1823,10 @@ tsan:stress: inherit: variables: - CI_REGISTRY_IMAGE + - TSAN_OPTIONS_COMMON + - TSAN_OPTIONS_DEBIAN + - TSAN_OPTIONS_FEDORA + - TSAN_SUPPRESSIONS variables: PARENT_PIPELINE_ID: $CI_PIPELINE_ID trigger: