Conditionally skip pipelines for non-impactful file changes?
Can we consider skipping the pipeline for changes that don’t directly affect the package, such as *.md
, docs/*
, etc.?
Running the pipeline for these changes leads to unnecessary resource consumption.
The proposal:
- Have a flag (
SKIP_DOCS_CHECK
) to toggle docs check on/off - When enabled, we have an extra header stage that blocks/continues the pipeline based on the pushed changes
- Allow users to define which files can be safely ignored by the pipeline. Say
SALSA_CI_DOCS_LIST: "*.md docs/*"
- The pipeline is blocked with a manual job (or cancelled/deleted; needs token)
- The pipeline is cancelled after a day if no manual action is taken (possibly using
starts_at
)
Expected Usage:
---
include:
- https://salsa.debian.org/44yu5h/salsa-ci/raw/eval-changes-w-token/salsa-ci.yml
- https://salsa.debian.org/44yu5h/salsa-ci/raw/eval-changes-w-token/pipeline-jobs.yml
variables:
SKIP_DOCS_CHECK: 0
SALSA_CI_DOCS_LIST: "*.md docs/*"
Expected Behavior:
