diff mbox series

[v2] drm/ci: fix merge request rules

Message ID 20250227042058.409003-1-vignesh.raman@collabora.com (mailing list archive)
State New
Headers show
Series [v2] drm/ci: fix merge request rules | expand

Commit Message

Vignesh Raman Feb. 27, 2025, 4:20 a.m. UTC
Merge request pipelines were only created when changes
were made to drivers/gpu/drm/ci/, causing MRs that
didn't touch this path to break. Fix MR pipeline rules
to trigger jobs for all changes.

Run jobs automatically for marge-bot and scheduled
pipelines, but in all other cases run manually. Also
remove CI_PROJECT_NAMESPACE checks specific to mesa.

Fixes: df54f04f2020 ("drm/ci: update gitlab rules")
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
---

v2:
  - Run jobs automatically for marge-bot and scheduled
    pipelines, but in all other cases run manually. Also
    remove CI_PROJECT_NAMESPACE checks specific to mesa.

---
 drivers/gpu/drm/ci/gitlab-ci.yml | 21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

Comments

Helen Mae Koike Fornazier Feb. 27, 2025, 12:46 p.m. UTC | #1
Em qui., 27 de fev. de 2025 às 01:21, Vignesh Raman
<vignesh.raman@collabora.com> escreveu:
>
> Merge request pipelines were only created when changes
> were made to drivers/gpu/drm/ci/, causing MRs that
> didn't touch this path to break. Fix MR pipeline rules
> to trigger jobs for all changes.
>
> Run jobs automatically for marge-bot and scheduled
> pipelines, but in all other cases run manually. Also
> remove CI_PROJECT_NAMESPACE checks specific to mesa.
>
> Fixes: df54f04f2020 ("drm/ci: update gitlab rules")
> Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>

Acked-by: Helen Koike <helen.fornazier@gmail.com>

> ---
>
> v2:
>   - Run jobs automatically for marge-bot and scheduled
>     pipelines, but in all other cases run manually. Also
>     remove CI_PROJECT_NAMESPACE checks specific to mesa.
>
> ---
>  drivers/gpu/drm/ci/gitlab-ci.yml | 21 +++++----------------
>  1 file changed, 5 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index f04aabe8327c..f4e324e156db 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -143,11 +143,11 @@ stages:
>      # Pre-merge pipeline
>      - if: &is-pre-merge $CI_PIPELINE_SOURCE == "merge_request_event"
>      # Push to a branch on a fork
> -    - if: &is-fork-push $CI_PROJECT_NAMESPACE != "mesa" && $CI_PIPELINE_SOURCE == "push"
> +    - if: &is-fork-push $CI_PIPELINE_SOURCE == "push"
>      # nightly pipeline
>      - if: &is-scheduled-pipeline $CI_PIPELINE_SOURCE == "schedule"
>      # pipeline for direct pushes that bypassed the CI
> -    - if: &is-direct-push $CI_PROJECT_NAMESPACE == "mesa" && $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
> +    - if: &is-direct-push $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
>
>
>  # Rules applied to every job in the pipeline
> @@ -170,26 +170,15 @@ stages:
>      - !reference [.disable-farm-mr-rules, rules]
>      # Never run immediately after merging, as we just ran everything
>      - !reference [.never-post-merge-rules, rules]
> -    # Build everything in merge pipelines, if any files affecting the pipeline
> -    # were changed
> +    # Build everything in merge pipelines
>      - if: *is-merge-attempt
> -      changes: &all_paths
> -      - drivers/gpu/drm/ci/**/*
>        when: on_success
>      # Same as above, but for pre-merge pipelines
>      - if: *is-pre-merge
> -      changes:
> -        *all_paths
> -      when: manual
> -    # Skip everything for pre-merge and merge pipelines which don't change
> -    # anything in the build
> -    - if: *is-merge-attempt
> -      when: never
> -    - if: *is-pre-merge
> -      when: never
> +    - when: manual
>      # Build everything after someone bypassed the CI
>      - if: *is-direct-push
> -      when: on_success
> +    - when: manual
>      # Build everything in scheduled pipelines
>      - if: *is-scheduled-pipeline
>        when: on_success
> --
> 2.47.2
>
Dmitry Baryshkov Feb. 28, 2025, 6:58 a.m. UTC | #2
On Thu, Feb 27, 2025 at 09:50:50AM +0530, Vignesh Raman wrote:
> Merge request pipelines were only created when changes
> were made to drivers/gpu/drm/ci/, causing MRs that
> didn't touch this path to break. Fix MR pipeline rules
> to trigger jobs for all changes.
> 
> Run jobs automatically for marge-bot and scheduled
> pipelines, but in all other cases run manually. Also
> remove CI_PROJECT_NAMESPACE checks specific to mesa.
> 
> Fixes: df54f04f2020 ("drm/ci: update gitlab rules")
> Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
> ---
> 
> v2:
>   - Run jobs automatically for marge-bot and scheduled
>     pipelines, but in all other cases run manually. Also
>     remove CI_PROJECT_NAMESPACE checks specific to mesa.
> 
> ---
>  drivers/gpu/drm/ci/gitlab-ci.yml | 21 +++++----------------
>  1 file changed, 5 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index f04aabe8327c..f4e324e156db 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -143,11 +143,11 @@ stages:
>      # Pre-merge pipeline
>      - if: &is-pre-merge $CI_PIPELINE_SOURCE == "merge_request_event"
>      # Push to a branch on a fork
> -    - if: &is-fork-push $CI_PROJECT_NAMESPACE != "mesa" && $CI_PIPELINE_SOURCE == "push"
> +    - if: &is-fork-push $CI_PIPELINE_SOURCE == "push"
>      # nightly pipeline
>      - if: &is-scheduled-pipeline $CI_PIPELINE_SOURCE == "schedule"
>      # pipeline for direct pushes that bypassed the CI
> -    - if: &is-direct-push $CI_PROJECT_NAMESPACE == "mesa" && $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
> +    - if: &is-direct-push $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
>  
>  
>  # Rules applied to every job in the pipeline
> @@ -170,26 +170,15 @@ stages:
>      - !reference [.disable-farm-mr-rules, rules]
>      # Never run immediately after merging, as we just ran everything
>      - !reference [.never-post-merge-rules, rules]
> -    # Build everything in merge pipelines, if any files affecting the pipeline
> -    # were changed
> +    # Build everything in merge pipelines
>      - if: *is-merge-attempt
> -      changes: &all_paths
> -      - drivers/gpu/drm/ci/**/*
>        when: on_success
>      # Same as above, but for pre-merge pipelines
>      - if: *is-pre-merge
> -      changes:
> -        *all_paths
> -      when: manual
> -    # Skip everything for pre-merge and merge pipelines which don't change
> -    # anything in the build
> -    - if: *is-merge-attempt
> -      when: never
> -    - if: *is-pre-merge
> -      when: never
> +    - when: manual

I believe there should be no dash on this line

>      # Build everything after someone bypassed the CI
>      - if: *is-direct-push
> -      when: on_success
> +    - when: manual

And on this line too.

>      # Build everything in scheduled pipelines
>      - if: *is-scheduled-pipeline
>        when: on_success
> -- 
> 2.47.2
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
index f04aabe8327c..f4e324e156db 100644
--- a/drivers/gpu/drm/ci/gitlab-ci.yml
+++ b/drivers/gpu/drm/ci/gitlab-ci.yml
@@ -143,11 +143,11 @@  stages:
     # Pre-merge pipeline
     - if: &is-pre-merge $CI_PIPELINE_SOURCE == "merge_request_event"
     # Push to a branch on a fork
-    - if: &is-fork-push $CI_PROJECT_NAMESPACE != "mesa" && $CI_PIPELINE_SOURCE == "push"
+    - if: &is-fork-push $CI_PIPELINE_SOURCE == "push"
     # nightly pipeline
     - if: &is-scheduled-pipeline $CI_PIPELINE_SOURCE == "schedule"
     # pipeline for direct pushes that bypassed the CI
-    - if: &is-direct-push $CI_PROJECT_NAMESPACE == "mesa" && $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
+    - if: &is-direct-push $CI_PIPELINE_SOURCE == "push" && $GITLAB_USER_LOGIN != "marge-bot"
 
 
 # Rules applied to every job in the pipeline
@@ -170,26 +170,15 @@  stages:
     - !reference [.disable-farm-mr-rules, rules]
     # Never run immediately after merging, as we just ran everything
     - !reference [.never-post-merge-rules, rules]
-    # Build everything in merge pipelines, if any files affecting the pipeline
-    # were changed
+    # Build everything in merge pipelines
     - if: *is-merge-attempt
-      changes: &all_paths
-      - drivers/gpu/drm/ci/**/*
       when: on_success
     # Same as above, but for pre-merge pipelines
     - if: *is-pre-merge
-      changes:
-        *all_paths
-      when: manual
-    # Skip everything for pre-merge and merge pipelines which don't change
-    # anything in the build
-    - if: *is-merge-attempt
-      when: never
-    - if: *is-pre-merge
-      when: never
+    - when: manual
     # Build everything after someone bypassed the CI
     - if: *is-direct-push
-      when: on_success
+    - when: manual
     # Build everything in scheduled pipelines
     - if: *is-scheduled-pipeline
       when: on_success