automation/gitlab-ci/build.yaml | 7 ++----- automation/gitlab-ci/test.yaml | 27 +++++++++++---------------- 2 files changed, 13 insertions(+), 21 deletions(-)
The selected jobs regex was assumed to be possibly empty in some places
and setting a default value for the regex caused the hardware jobs to
bypass some rules checks.
To fix this, adjust the rules to remove the check for empty and
instead just match the regex.
Fixes: 485ab1b5db0f358625fafe2df4e41e3ef008aed8
Signed-off-by: Victor Lira <victorm.lira@amd.com>
---
https://gitlab.com/xen-project/people/sstabellini/xen/-/pipelines/2212446508
https://gitlab.com/xen-project/people/victormlira/xen/-/pipelines/2212446409
---
automation/gitlab-ci/build.yaml | 7 ++-----
automation/gitlab-ci/test.yaml | 27 +++++++++++----------------
2 files changed, 13 insertions(+), 21 deletions(-)
diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml
index f7e032320a..a6fc55c2d5 100644
--- a/automation/gitlab-ci/build.yaml
+++ b/automation/gitlab-ci/build.yaml
@@ -13,11 +13,8 @@
when: always
needs: []
rules:
- - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- when: always
- - if: $SELECTED_JOBS_ONLY
- when: never
- - when: on_success
+ - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
+ when: on_success
.gcc-tmpl:
variables: &gcc
diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
index 8d8f62c8d0..338fc99a8a 100644
--- a/automation/gitlab-ci/test.yaml
+++ b/automation/gitlab-ci/test.yaml
@@ -2,10 +2,8 @@
stage: test
image: ${XEN_REGISTRY}/${CONTAINER}
rules:
- - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- - if: $SELECTED_JOBS_ONLY
- when: never
- - when: on_success
+ - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
+ when: on_success
.arm64-test-needs: &arm64-test-needs
- project: xen-project/hardware/test-artifacts
@@ -113,10 +111,9 @@
- '*.dtb'
when: always
rules:
- - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- - if: $SELECTED_JOBS_ONLY
- when: never
- - if: $XILINX_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
+ - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $XILINX_JOBS == "true"
+ && $CI_COMMIT_REF_PROTECTED == "true"
+ when: on_success
tags:
- xilinx
@@ -134,10 +131,9 @@
- '*.log'
when: always
rules:
- - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- - if: $SELECTED_JOBS_ONLY
- when: never
- - if: $XILINX_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
+ - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $XILINX_JOBS == "true"
+ && $CI_COMMIT_REF_PROTECTED == "true"
+ when: on_success
tags:
- xilinx
@@ -157,10 +153,9 @@
- '*.log'
when: always
rules:
- - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
- - if: $SELECTED_JOBS_ONLY
- when: never
- - if: $QUBES_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
+ - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $QUBES_JOBS == "true"
+ && $CI_COMMIT_REF_PROTECTED == "true"
+ when: on_success
tags:
- qubes-hw2
--
2.51.GIT
On 2025-12-13 02:30, Victor Lira wrote:
> The selected jobs regex was assumed to be possibly empty in some places
> and setting a default value for the regex caused the hardware jobs to
> bypass some rules checks.
>
> To fix this, adjust the rules to remove the check for empty and
> instead just match the regex.
>
> Fixes: 485ab1b5db0f358625fafe2df4e41e3ef008aed8
nit: the format should be
Fixes: 485ab1b5db0f ("automation: edit pipeline to prevent running
non-selected jobs")
> Signed-off-by: Victor Lira <victorm.lira@amd.com>
> ---
> https://gitlab.com/xen-project/people/sstabellini/xen/-/pipelines/2212446508
> https://gitlab.com/xen-project/people/victormlira/xen/-/pipelines/2212446409
> ---
> automation/gitlab-ci/build.yaml | 7 ++-----
> automation/gitlab-ci/test.yaml | 27 +++++++++++----------------
> 2 files changed, 13 insertions(+), 21 deletions(-)
>
> diff --git a/automation/gitlab-ci/build.yaml
> b/automation/gitlab-ci/build.yaml
> index f7e032320a..a6fc55c2d5 100644
> --- a/automation/gitlab-ci/build.yaml
> +++ b/automation/gitlab-ci/build.yaml
> @@ -13,11 +13,8 @@
> when: always
> needs: []
> rules:
> - - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> - when: always
> - - if: $SELECTED_JOBS_ONLY
> - when: never
> - - when: on_success
> + - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> + when: on_success
>
> .gcc-tmpl:
> variables: &gcc
> diff --git a/automation/gitlab-ci/test.yaml
> b/automation/gitlab-ci/test.yaml
> index 8d8f62c8d0..338fc99a8a 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -2,10 +2,8 @@
> stage: test
> image: ${XEN_REGISTRY}/${CONTAINER}
> rules:
> - - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> - - if: $SELECTED_JOBS_ONLY
> - when: never
> - - when: on_success
> + - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> + when: on_success
>
> .arm64-test-needs: &arm64-test-needs
> - project: xen-project/hardware/test-artifacts
> @@ -113,10 +111,9 @@
> - '*.dtb'
> when: always
> rules:
> - - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> - - if: $SELECTED_JOBS_ONLY
> - when: never
> - - if: $XILINX_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
> + - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $XILINX_JOBS ==
> "true"
> + && $CI_COMMIT_REF_PROTECTED == "true"
> + when: on_success
> tags:
> - xilinx
>
> @@ -134,10 +131,9 @@
> - '*.log'
> when: always
> rules:
> - - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> - - if: $SELECTED_JOBS_ONLY
> - when: never
> - - if: $XILINX_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
> + - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $XILINX_JOBS ==
> "true"
> + && $CI_COMMIT_REF_PROTECTED == "true"
> + when: on_success
> tags:
> - xilinx
>
> @@ -157,10 +153,9 @@
> - '*.log'
> when: always
> rules:
> - - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
> - - if: $SELECTED_JOBS_ONLY
> - when: never
> - - if: $QUBES_JOBS == "true" && $CI_COMMIT_REF_PROTECTED == "true"
> + - if: $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY && $QUBES_JOBS == "true"
> + && $CI_COMMIT_REF_PROTECTED == "true"
> + when: on_success
> tags:
> - qubes-hw2
>
> --
> 2.51.GIT
--
Nicola Vetrini, B.Sc.
Software Engineer
BUGSENG (https://bugseng.com)
LinkedIn: https://www.linkedin.com/in/nicola-vetrini-a42471253
On Sat, 13 Dec 2025, Victor Lira wrote: > The selected jobs regex was assumed to be possibly empty in some places > and setting a default value for the regex caused the hardware jobs to > bypass some rules checks. > > To fix this, adjust the rules to remove the check for empty and > instead just match the regex. > > Fixes: 485ab1b5db0f358625fafe2df4e41e3ef008aed8 > Signed-off-by: Victor Lira <victorm.lira@amd.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
© 2016 - 2025 Red Hat, Inc.