6a0e7ea7b8
Currently job rules are spread across the various templates and jobs, making it hard to understand exactly what runs in what scenario. This leads to inconsistency in the rules and increased maint burden. The intent is that we introduce a common '.base_job_template' which will have a general purpose 'rules:' block. No other template or job should define 'rules:', but instead they must rely on the inherited rules. To allow behaviour to be tweaked, rules will be influenced by a number of variables with the naming scheme 'QEMU_JOB_nnnn'. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20220526110705.59952-2-berrange@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20220527153603.887929-29-alex.bennee@linaro.org>
29 lines
1017 B
YAML
29 lines
1017 B
YAML
|
|
# The order of rules defined here is critically important.
|
|
# They are evaluated in order and first match wins.
|
|
#
|
|
# Thus we group them into a number of stages, ordered from
|
|
# most restrictive to least restrictive
|
|
#
|
|
.base_job_template:
|
|
rules:
|
|
#############################################################
|
|
# Stage 1: exclude scenarios where we definitely don't
|
|
# want jobs to run
|
|
#############################################################
|
|
|
|
|
|
#############################################################
|
|
# Stage 2: fine tune execution of jobs in specific scenarios
|
|
# where the catch all logic is inapprorpaite
|
|
#############################################################
|
|
|
|
|
|
#############################################################
|
|
# Stage 3: catch all logic applying to any job not matching
|
|
# an earlier criteria
|
|
#############################################################
|
|
|
|
# Jobs can run if any jobs they depend on were successfull
|
|
- when: on_success
|