From bcd364d6f43be8b1b34f3cfb311961e20cea405b 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 0733fa0d54..8f07655777 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1631,6 +1631,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: @@ -2365,6 +2372,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 ad5cb84652f2c34c6801bf10e94aad5b71af60f2 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 8f07655777..d2c297ffc6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2379,6 +2379,7 @@ stress-test-child-pipeline: inherit: variables: - CI_REGISTRY_IMAGE + - CONFIGURE rules: - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null' changes: From f0badb8cb55ba448f2f45105517367fe473233c1 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 d2c297ffc6..721c723d54 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1638,6 +1638,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: