mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2024-12-02 22:54:05 +08:00
9b87912f62
Signed-off-by: Eric Engestrom <eric@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24898>
242 lines
7.9 KiB
YAML
242 lines
7.9 KiB
YAML
# The logic for each $FARM is as follows:
|
|
#
|
|
# If the disable file exists, we are disabling the farm, or it's already
|
|
# disabled:
|
|
# - exists: [ .ci-farms-disabled/$FARM ]
|
|
# when: never
|
|
#
|
|
# Otherwise, changing the disable file means removing it, so we are
|
|
# re-enabling the farm:
|
|
# - changes: [ .ci-farms-disabled/$FARM ]
|
|
# if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
# when: on_success
|
|
# Note: the "manual" variant of each farm rules changes the above to `never`,
|
|
# so that jobs meant to be manual don't run in re-enablement MRs. This is the
|
|
# only difference between `.$FARM-farm-rules` and `.$FARM-farm-manual-rules`.
|
|
#
|
|
# If any other disable file is modified, we are disabling/re-enabling another
|
|
# farm:
|
|
# - changes: [ .ci-farms-disabled/* ]
|
|
# if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
# when: never
|
|
#
|
|
# The `not schedule` condition is there to make sure scheduled pipelines
|
|
# contains all the jobs, as `changes` conditions in scheduled pipelines are
|
|
# always evaluated to `true`.
|
|
#
|
|
# The "fallback", if none of these rules match, is usually the list of files
|
|
# that are used by a driver. See the various `.$DRIVER-rules` in the
|
|
# corresponding `src/**/ci/gitlab-ci.yml`.
|
|
|
|
.microsoft-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/microsoft ] # 1. Is disabled, never run
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/microsoft ] # 2. Removed from disabled, run
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ] # 3. We touched other farms in MR, do not run
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
# 4. Fall-through (other rules or on_success)
|
|
|
|
.microsoft-farm-manual-rules:
|
|
rules:
|
|
# Allow triggering jobs manually in other cases if any files affecting the
|
|
# pipeline were changed
|
|
- exists: [ .ci-farms-disabled/microsoft ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/microsoft ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.microsoft-farm-rules, rules]
|
|
|
|
.microsoft-farm-container-rules:
|
|
rules:
|
|
# Allow triggering jobs manually in other cases if any files affecting the
|
|
# pipeline were changed
|
|
- exists: [ .ci-farms-disabled/microsoft ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/microsoft ]
|
|
if: '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_BRANCH'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/microsoft ]
|
|
if: '$GITLAB_USER_LOGIN == "marge-bot" && $CI_PIPELINE_SOURCE == "merge_request_event"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/microsoft ]
|
|
if: '$CI_PROJECT_NAMESPACE == "mesa" && $GITLAB_USER_LOGIN != "marge-bot" && $CI_COMMIT_BRANCH'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_BRANCH'
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$GITLAB_USER_LOGIN == "marge-bot" && $CI_PIPELINE_SOURCE == "merge_request_event"'
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PROJECT_NAMESPACE == "mesa" && $GITLAB_USER_LOGIN != "marge-bot" && $CI_COMMIT_BRANCH'
|
|
when: never
|
|
|
|
|
|
.collabora-farm-rules:
|
|
rules:
|
|
- if: '$RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/'
|
|
exists: [ .ci-farms-disabled/collabora ]
|
|
when: never
|
|
- if: '$RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/ && $CI_PIPELINE_SOURCE != "schedule"'
|
|
changes: [ .ci-farms-disabled/collabora ]
|
|
when: on_success
|
|
- if: '$RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/ && $CI_PIPELINE_SOURCE != "schedule"'
|
|
changes: [ .ci-farms-disabled/* ]
|
|
when: never
|
|
|
|
.collabora-farm-manual-rules:
|
|
rules:
|
|
- if: '$RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/'
|
|
exists: [ .ci-farms-disabled/collabora ]
|
|
when: never
|
|
- if: '$RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/ && $CI_PIPELINE_SOURCE != "schedule"'
|
|
changes: [ .ci-farms-disabled/collabora ]
|
|
when: never
|
|
- !reference [.collabora-farm-rules, rules]
|
|
|
|
|
|
.igalia-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/igalia ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/igalia ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.igalia-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/igalia ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/igalia ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.igalia-farm-rules, rules]
|
|
|
|
|
|
.lima-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/lima ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/lima ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.lima-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/lima ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/lima ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.lima-farm-rules, rules]
|
|
|
|
|
|
.anholt-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/anholt ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/anholt ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.anholt-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/anholt ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/anholt ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.anholt-farm-rules, rules]
|
|
|
|
|
|
.valve-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/valve-mupuf ]
|
|
if: '$RUNNER_FARM_LOCATION == "mupuf"'
|
|
when: never
|
|
- exists: [ .ci-farms-disabled/valve-kws ]
|
|
if: '$RUNNER_FARM_LOCATION == "keywords"'
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/valve-mupuf ]
|
|
if: '$RUNNER_FARM_LOCATION == "mupuf" && $CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/valve-kws ]
|
|
if: '$RUNNER_FARM_LOCATION == "keywords" && $CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.valve-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/valve-mupuf ]
|
|
if: '$RUNNER_FARM_LOCATION == "mupuf"'
|
|
when: never
|
|
- exists: [ .ci-farms-disabled/valve-kws ]
|
|
if: '$RUNNER_FARM_LOCATION == "keywords"'
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/valve-mupuf ]
|
|
if: '$RUNNER_FARM_LOCATION == "mupuf" && $CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/valve-kws ]
|
|
if: '$RUNNER_FARM_LOCATION == "keywords" && $CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.valve-farm-rules, rules]
|
|
|
|
|
|
.austriancoder-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/austriancoder ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/austriancoder ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.austriancoder-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/austriancoder ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/austriancoder ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.austriancoder-farm-rules, rules]
|
|
|
|
|
|
.freedreno-farm-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/freedreno ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/freedreno ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: on_success
|
|
- changes: [ .ci-farms-disabled/* ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
|
|
.freedreno-farm-manual-rules:
|
|
rules:
|
|
- exists: [ .ci-farms-disabled/freedreno ]
|
|
when: never
|
|
- changes: [ .ci-farms-disabled/freedreno ]
|
|
if: '$CI_PIPELINE_SOURCE != "schedule"'
|
|
when: never
|
|
- !reference [.freedreno-farm-rules, rules]
|
|
|