Without this, scheduled pipelines erroneously tried to create jobs using this template, which can't work, because their dependency jobs don't exist in scheduled pipelines. Unfortunately, this resulted in scheduled pipelines not running silently, without any direct feedback about what's wrong (see https://gitlab.com/gitlab-org/gitlab/-/issues/25490). Fixes:6c8b921572"ci: Build kernels and rootfs for x86 devices" Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6802> (cherry picked from commita1f46d7b69)
190 lines
4.5 KiB
YAML
190 lines
4.5 KiB
YAML
# This file list source dependencies to avoid creating/running jobs
|
|
# those outcome cannot be changed by the modifications from a branch.
|
|
|
|
# Mesa core source file dependencies
|
|
# ----------------------------------
|
|
.mesa-rules:
|
|
rules:
|
|
- changes: &mesa_core_file_list
|
|
- .gitlab-ci.yml
|
|
- .gitlab-ci/**/*
|
|
- include/**/*
|
|
- meson.build
|
|
- SConstruct
|
|
- src/*
|
|
- src/compiler/**/*
|
|
- src/drm-shim/**/*
|
|
- src/egl/**/*
|
|
- src/gbm/**/*
|
|
- src/glx/**/*
|
|
- src/gtest/**/*
|
|
- src/hgl/**/*
|
|
- src/include/**/*
|
|
- src/loader/**/*
|
|
- src/mapi/**/*
|
|
- src/mesa/**/*
|
|
- src/util/**/*
|
|
|
|
# Gallium core source file dependencies
|
|
# -------------------------------------
|
|
.gallium-rules:
|
|
rules:
|
|
- changes: &gallium_core_file_list
|
|
- src/gallium/*
|
|
- src/gallium/auxiliary/**/*
|
|
- src/gallium/drivers/*
|
|
- src/gallium/include/**/*
|
|
- src/gallium/state_trackers/**/*
|
|
- src/gallium/targets/**/*
|
|
- src/gallium/tests/**/*
|
|
- src/gallium/winsys/*
|
|
|
|
# Generic rule to not run the job during scheduled pipelines
|
|
# ----------------------------------------------------------
|
|
.scheduled_pipelines-rules:
|
|
rules: &ignore_scheduled_pipelines
|
|
if: '$CI_PIPELINE_SOURCE == "schedule"'
|
|
when: never
|
|
|
|
.softpipe-rules:
|
|
stage: softpipe
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/gallium/drivers/softpipe/**/*
|
|
- src/gallium/winsys/sw/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.llvmpipe-rules:
|
|
stage: llvmpipe
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes: &llvmpipe_file_list
|
|
- src/gallium/drivers/llvmpipe/**/*
|
|
- src/gallium/winsys/sw/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.freedreno-rules:
|
|
stage: freedreno
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
# Note: when https://gitlab.com/gitlab-org/gitlab/-/issues/198688
|
|
# is supported, we can change the src/freedreno/ rule to explicitly
|
|
# exclude tools, rather than having to explicitly list everything
|
|
# else
|
|
- src/freedreno/common/**/*
|
|
- src/freedreno/drm/**/*
|
|
- src/freedreno/fdl/**/*
|
|
- src/freedreno/ir2/**/*
|
|
- src/freedreno/ir3/**/*
|
|
- src/freedreno/perfcntrs/**/*
|
|
- src/freedreno/registers/**/*
|
|
- src/freedreno/vulkan/**/*
|
|
- src/gallium/drivers/freedreno/**/*
|
|
- src/gallium/winsys/freedreno/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.panfrost-rules:
|
|
stage: panfrost
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/gallium/drivers/panfrost/**/*
|
|
- src/gallium/winsys/panfrost/**/*
|
|
- src/panfrost/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.lima-rules:
|
|
stage: lima
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/gallium/drivers/lima/**/*
|
|
- src/gallium/winsys/lima/**/*
|
|
- src/lima/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.radv-rules:
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/amd/**/*
|
|
- src/vulkan/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.virgl-rules:
|
|
stage: virgl
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*llvmpipe_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/gallium/drivers/virgl/**/*
|
|
- src/gallium/winsys/virgl/**/*
|
|
when: on_success
|
|
- when: never
|
|
|
|
.radeonsi-rules:
|
|
stage: radeonsi
|
|
rules:
|
|
- *ignore_scheduled_pipelines
|
|
- changes:
|
|
*mesa_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
*gallium_core_file_list
|
|
when: on_success
|
|
- changes:
|
|
- src/gallium/drivers/radeonsi/**/*
|
|
- src/gallium/winsys/amdgpu/**/*
|
|
- src/amd/**/*
|
|
when: on_success
|
|
- when: never
|