Mesa (main): ci: Split core GL from core VK-or-GL rules.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Jun 30 19:10:34 UTC 2022
Module: Mesa
Branch: main
Commit: f2164ab92c2f5c5bb9a2d160aa9aeb7d92c2df04
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f2164ab92c2f5c5bb9a2d160aa9aeb7d92c2df04
Author: Emma Anholt <emma at anholt.net>
Date: Tue Jun 28 12:59:47 2022 -0700
ci: Split core GL from core VK-or-GL rules.
Now editing src/glx won't rerun Vulkan testing.
Reviewed-by: Guilherme Gallo <guilherme.gallo at collabora.com>
Acked-by: Eric Engestrom <eric at engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17287>
---
.gitlab-ci/test-source-dep.yml | 233 ++++++++++-------------------------------
1 file changed, 53 insertions(+), 180 deletions(-)
diff --git a/.gitlab-ci/test-source-dep.yml b/.gitlab-ci/test-source-dep.yml
index 7a3983e2473..5a1cf86a8d8 100644
--- a/.gitlab-ci/test-source-dep.yml
+++ b/.gitlab-ci/test-source-dep.yml
@@ -14,12 +14,12 @@
- if: *is-scheduled-pipeline
when: never
-# Mesa core source file dependencies
-# ----------------------------------
-.mesa-rules:
+# Mesa core source file dependencies that may impact any build or test.
+# ---------------------------------------------------------------------
+.core-rules:
rules:
- !reference [.no_scheduled_pipelines-rules, rules]
- - changes: &mesa_core_file_list
+ - changes: &core_file_list
- .gitlab-ci.yml
- .gitlab-ci/**/*
- include/**/*
@@ -28,12 +28,24 @@
- src/*
- src/compiler/**/*
- src/drm-shim/**/*
- - src/egl/**/*
- src/gbm/**/*
- - src/glx/**/*
- src/gtest/**/*
- src/hgl/**/*
- src/include/**/*
+ # Some src/util and src/compiler files use headers from mesa/ (e.g.
+ # mtypes.h). We should clean that up.
+ - src/mesa/**/*.h
+ - src/tool/**/*
+ - src/util/**/*
+ when: on_success
+
+# Mesa source file dependencies that may impact any GL driver build or test.
+.gl-rules:
+ rules:
+ - !reference [.core-rules, rules]
+ - changes: &mesa_core_file_list
+ - src/egl/**/*
+ - src/glx/**/*
- src/loader/**/*
- src/mapi/**/*
- src/mesa/*
@@ -47,21 +59,7 @@
- src/mesa/vbo/**/*
- src/mesa/x86/**/*
- src/mesa/x86-64/**/*
- - src/tool/**/*
- - src/util/**/*
-
-.vulkan-rules:
- rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes: &vulkan_file_list
- - src/vulkan/**/*
when: on_success
-
-# Gallium core source file dependencies
-# -------------------------------------
-.gallium-rules:
- rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- changes: &gallium_core_file_list
- src/gallium/*
- src/gallium/auxiliary/**/*
@@ -72,17 +70,20 @@
- src/gallium/targets/**/*
- src/gallium/tests/**/*
- src/gallium/winsys/*
+ when: on_success
+
+# Source file dependencies that may impact any Vulkan driver build or test
+.vulkan-rules:
+ rules:
+ - !reference [.core-rules, rules]
+ - changes: &vulkan_file_list
+ - src/vulkan/**/*
+ when: on_success
.softpipe-rules:
stage: software-renderer
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &softpipe_file_list
- src/gallium/drivers/softpipe/**/*
- src/gallium/winsys/sw/**/*
@@ -92,13 +93,7 @@
.llvmpipe-rules:
stage: software-renderer
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &llvmpipe_file_list
- src/gallium/drivers/llvmpipe/**/*
- src/gallium/winsys/sw/**/*
@@ -109,12 +104,8 @@
stage: software-renderer
rules:
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ # One could probably be a little more clever here and skip non-gallium Mesa changes (see also .llvmpipe-cl-rules).
+ - !reference [.gl-rules, rules]
- changes: &lavapipe_file_list
- src/gallium/drivers/llvmpipe/**/*
- src/gallium/frontends/lavapipe/**/*
@@ -164,12 +155,7 @@
rules:
- !reference [.freedreno-farm-rules, rules]
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &freedreno_file_list
# Note: when https://gitlab.com/gitlab-org/gitlab/-/issues/198688
# is supported, we can change the src/freedreno/ rule to explicitly
@@ -217,13 +203,7 @@
.nouveau-rules:
stage: nouveau
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/nouveau/**/*
- src/gallium/drivers/nouveau/**/*
@@ -235,14 +215,8 @@
.panfrost-midgard-rules:
stage: arm
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &panfrost_gallium_file_list
- src/gallium/drivers/panfrost/**/*
- src/gallium/winsys/panfrost/**/*
@@ -264,12 +238,7 @@
rules:
- !reference [.collabora-farm-rules, rules]
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
*panfrost_common_file_list
when: on_success
@@ -287,13 +256,7 @@
.vc4-rules:
stage: broadcom
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/broadcom/**/*
- src/gallium/drivers/vc4/**/*
@@ -305,13 +268,7 @@
.v3d-rules:
stage: broadcom
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/broadcom/**/*
- src/gallium/drivers/v3d/**/*
@@ -324,9 +281,6 @@
stage: broadcom
rules:
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- changes:
- src/broadcom/**/*
when: on_success
@@ -335,15 +289,9 @@
.lima-rules:
stage: arm
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- if: '$LIMA_FARM == "offline"'
when: never
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/gallium/drivers/lima/**/*
- src/gallium/winsys/lima/**/*
@@ -354,11 +302,8 @@
.radv-rules:
stage: amd
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
+ - !reference [.vulkan-rules, rules]
- changes: &radv_file_list
- src/amd/**/*
- src/vulkan/**/*
@@ -368,13 +313,7 @@
.virgl-rules:
stage: layered-backends
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
*llvmpipe_file_list
when: on_success
@@ -389,17 +328,11 @@
.virgl-iris-rules-performance:
stage: layered-backends
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
# Run only on pre-merge pipelines from Marge
- if: '$GITLAB_USER_LOGIN != "marge-bot" || $CI_COMMIT_BRANCH'
when: never
- - changes:
- *mesa_core_file_list
- when: manual
- - changes:
- *gallium_core_file_list
- when: manual
+ - !reference [.gl-rules, rules]
- changes:
*llvmpipe_file_list
when: manual
@@ -411,14 +344,8 @@
.radeonsi-rules:
stage: amd
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &radeonsi_file_list
- src/gallium/drivers/radeonsi/**/*
- src/gallium/include/winsys/**/*
@@ -434,14 +361,8 @@
.radeonsi-vaapi-rules:
stage: amd
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
*radeonsi_file_list
when: on_success
@@ -453,13 +374,7 @@
.i915g-rules:
stage: intel
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/gallium/drivers/i915/**/*
- src/gallium/winsys/i915/**/*
@@ -470,13 +385,7 @@
.crocus-rules:
stage: intel
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/gallium/drivers/crocus/**/*
- src/gallium/winsys/crocus/**/*
@@ -489,12 +398,7 @@
rules:
- !reference [.no_scheduled_pipelines-rules, rules]
- !reference [.collabora-farm-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &iris_file_list
- src/gallium/drivers/iris/**/*
- src/gallium/winsys/iris/**/*
@@ -512,12 +416,7 @@
# Run only on pre-merge pipelines from Marge
- if: '$GITLAB_USER_LOGIN != "marge-bot" || $CI_COMMIT_BRANCH'
when: never
- - changes:
- *mesa_core_file_list
- when: manual
- - changes:
- *gallium_core_file_list
- when: manual
+ - !reference [.gl-rules, rules]
- changes:
*iris_file_list
when: manual
@@ -538,13 +437,9 @@
stage: intel
rules:
- !reference [.collabora-farm-rules, rules]
+ # Note that we trigger on changes both anv and iris, because piglit and skqp jobs test both.
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes: &iris_file_list
- src/gallium/drivers/iris/**/*
- src/gallium/winsys/iris/**/*
@@ -554,13 +449,7 @@
.zink-common-rules:
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/gallium/drivers/zink/**/*
when: on_success
@@ -628,12 +517,7 @@
rules:
- if: '$MICROSOFT_FARM == "offline"'
when: never
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
+ - !reference [.gl-rules, rules]
- changes: *d3d12_file_list
when: on_success
- changes:
@@ -646,9 +530,7 @@
- if: '$MICROSOFT_FARM == "offline"'
when: never
- !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
+ - !reference [.core-rules, rules]
- changes: &spirv2dxil_file_list
- src/microsoft/ci/*
- src/microsoft/compiler/*
@@ -661,9 +543,6 @@
- if: '$MICROSOFT_FARM == "offline"'
when: never
- !reference [.vulkan-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- changes:
*spirv2dxil_file_list
when: on_success
@@ -675,13 +554,7 @@
.etnaviv-rules:
stage: etnaviv
rules:
- - !reference [.no_scheduled_pipelines-rules, rules]
- - changes:
- *mesa_core_file_list
- when: on_success
- - changes:
- *gallium_core_file_list
- when: on_success
+ - !reference [.gl-rules, rules]
- changes:
- src/etnaviv/**/*
- src/gallium/drivers/etnaviv/**/*
More information about the mesa-commit
mailing list