From 7cc96afb644e63477b57e6f950625f6bc9bd3176 Mon Sep 17 00:00:00 2001 From: Nicolas Catoni Date: Wed, 8 Jul 2026 18:41:27 +0200 Subject: [PATCH 1/3] Filter job for auto_inject repo so system-tests specific jobs are excluded --- utils/scripts/ci_orchestrators/external_gitlab_pipeline.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py index 945879d5b02..d7728bb5d3f 100644 --- a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py +++ b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py @@ -70,8 +70,7 @@ def main(language: str | None = None) -> None: # Ensure 'variables' section exists and update with new values data.setdefault("variables", {}).update(new_variables) - if language and language in LANG_STAGES: - data = filter_yaml(data, language) + data = filter_yaml(data, language) handle_parallelism(data) @@ -81,10 +80,12 @@ def main(language: str | None = None) -> None: def is_allowed_stage(stage: str | None, language: str) -> bool: """Check if a stage is allowed based on the language.""" + if not language or language == "auto_inject": + return stage in LANG_STAGES or stage in {"configure", "pipeline-status"} return stage in {language, "configure", "pipeline-status"} -def filter_yaml(yaml_data: dict, language: str) -> dict: +def filter_yaml(yaml_data: dict, language: str | None) -> dict: """Filter the pipeline to run only the jobs for the specified language""" # Find all jobs where stage == language From d33d6338814b6616acce61fc8d2426a493278069 Mon Sep 17 00:00:00 2001 From: Nicolas Catoni Date: Wed, 8 Jul 2026 18:48:26 +0200 Subject: [PATCH 2/3] Format --- utils/scripts/ci_orchestrators/external_gitlab_pipeline.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py index d7728bb5d3f..bf77a4a19a9 100644 --- a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py +++ b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py @@ -78,7 +78,7 @@ def main(language: str | None = None) -> None: print(yaml.dump(data, default_flow_style=False, sort_keys=False)) -def is_allowed_stage(stage: str | None, language: str) -> bool: +def is_allowed_stage(stage: str | None, language: str | None) -> bool: """Check if a stage is allowed based on the language.""" if not language or language == "auto_inject": return stage in LANG_STAGES or stage in {"configure", "pipeline-status"} From cef6c0569349bb66567cd6441053a88e400a0c58 Mon Sep 17 00:00:00 2001 From: Nicolas Catoni Date: Wed, 8 Jul 2026 19:05:21 +0200 Subject: [PATCH 3/3] Trigger all pipelines for all unknown lang --- utils/scripts/ci_orchestrators/external_gitlab_pipeline.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py index bf77a4a19a9..fea0ae7aceb 100644 --- a/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py +++ b/utils/scripts/ci_orchestrators/external_gitlab_pipeline.py @@ -80,7 +80,7 @@ def main(language: str | None = None) -> None: def is_allowed_stage(stage: str | None, language: str | None) -> bool: """Check if a stage is allowed based on the language.""" - if not language or language == "auto_inject": + if not language or language not in LANG_STAGES: return stage in LANG_STAGES or stage in {"configure", "pipeline-status"} return stage in {language, "configure", "pipeline-status"}