The patch adds enhanced features to SIMP Puppet modules' standardized
GitLab CI pipeline:
spec and acceptance tests only run when relevant files have changed
The CI variable SIMP_FULL_MATRIX is replaced by SIMP_MATRIX_LEVEL
spec and acceptance tests run at or above their SIMP_MATRIX_LEVEL
Jobs and the pipeline default to SIMP_MATRIX_LEVEL 1
The pipeline's SIMP_MATRIX_LEVEL can be changed via CI variable
(via triggers, group/project settings, etc)
In the pipeline-triggering commit message, adding a line that starts
with CI: MATRIX LEVEL 0 or CI: SKIP MATRIX will suppress all steps
with SIMP_MATRIX_LEVEL 1-3
There is an important caveat: because of the way GitLab CI pipelines
determine changes, a file that hasn't changed between --amend +
force-pushed updates will not trigger the matrix again. This affects
scheduled and triggered pipelines.
To solve this scenario, setting the CI variable SIMP_FORCE_MATRIX = yes in a scheduled pipeline or pipeline trigger will ensure that all
jobs at the current SIMP_MATRIX_LEVEL are run, regardless of what
has changed (or not).
CI: SKIP_MATRIX
SIMP-8035 #close
SIMP-7974 #comment Add file-match CI runs to pupmod-simp-pupmod
SIMP-7975 #comment Add SIMP_MATRIX_LEVEL checks to pupmod-simp-pupmod
The patch adds enhanced features to SIMP Puppet modules' standardized GitLab CI pipeline:
SIMP_FULL_MATRIX
is replaced bySIMP_MATRIX_LEVEL
SIMP_MATRIX_LEVEL
SIMP_MATRIX_LEVEL
1SIMP_MATRIX_LEVEL
can be changed via CI variable (via triggers, group/project settings, etc)CI: MATRIX LEVEL 0
orCI: SKIP MATRIX
will suppress all steps withSIMP_MATRIX_LEVEL
1-3There is an important caveat: because of the way GitLab CI pipelines determine
changes
, a file that hasn't changed between--amend
+ force-pushed updates will not trigger the matrix again. This affects scheduled and triggered pipelines.SIMP_FORCE_MATRIX = yes
in a scheduled pipeline or pipeline trigger will ensure that all jobs at the currentSIMP_MATRIX_LEVEL
are run, regardless of what has changed (or not).CI: SKIP_MATRIX SIMP-8035 #close SIMP-7974 #comment Add file-match CI runs to pupmod-simp-pupmod SIMP-7975 #comment Add
SIMP_MATRIX_LEVEL
checks to pupmod-simp-pupmod