xref: /openbmc/qemu/.gitlab-ci.d/base.yml (revision 6a0e7ea7)
1*6a0e7ea7SDaniel P. Berrangé
2*6a0e7ea7SDaniel P. Berrangé# The order of rules defined here is critically important.
3*6a0e7ea7SDaniel P. Berrangé# They are evaluated in order and first match wins.
4*6a0e7ea7SDaniel P. Berrangé#
5*6a0e7ea7SDaniel P. Berrangé# Thus we group them into a number of stages, ordered from
6*6a0e7ea7SDaniel P. Berrangé# most restrictive to least restrictive
7*6a0e7ea7SDaniel P. Berrangé#
8*6a0e7ea7SDaniel P. Berrangé.base_job_template:
9*6a0e7ea7SDaniel P. Berrangé  rules:
10*6a0e7ea7SDaniel P. Berrangé    #############################################################
11*6a0e7ea7SDaniel P. Berrangé    # Stage 1: exclude scenarios where we definitely don't
12*6a0e7ea7SDaniel P. Berrangé    # want jobs to run
13*6a0e7ea7SDaniel P. Berrangé    #############################################################
14*6a0e7ea7SDaniel P. Berrangé
15*6a0e7ea7SDaniel P. Berrangé
16*6a0e7ea7SDaniel P. Berrangé    #############################################################
17*6a0e7ea7SDaniel P. Berrangé    # Stage 2: fine tune execution of jobs in specific scenarios
18*6a0e7ea7SDaniel P. Berrangé    # where the catch all logic is inapprorpaite
19*6a0e7ea7SDaniel P. Berrangé    #############################################################
20*6a0e7ea7SDaniel P. Berrangé
21*6a0e7ea7SDaniel P. Berrangé
22*6a0e7ea7SDaniel P. Berrangé    #############################################################
23*6a0e7ea7SDaniel P. Berrangé    # Stage 3: catch all logic applying to any job not matching
24*6a0e7ea7SDaniel P. Berrangé    # an earlier criteria
25*6a0e7ea7SDaniel P. Berrangé    #############################################################
26*6a0e7ea7SDaniel P. Berrangé
27*6a0e7ea7SDaniel P. Berrangé    # Jobs can run if any jobs they depend on were successfull
28*6a0e7ea7SDaniel P. Berrangé    - when: on_success
29