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)
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:
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: