posit-dev / posit-dev/images-shared
Confirm empty-matrix guard produces "skipped" (not failed) CI on a real push
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2
- Forks
- 0
- Avg merge
- 4d 13h
- Merged PRs (30d)
- 22
Description
#663 made push-to-main builds change-aware, which means the build matrix can
now legitimately be empty (e.g. a docs-only merge). GitHub Actions fails
rather than skips a job fed an empty strategy.matrix, so #663 added
if: needs.matrix.outputs.X != '[]' guards to the affected jobs, matching
the pattern already used on the PR side.
The guard's correctness depends on GitHub Actions' skip-cascade behavior: a
job whose needs dependency was skipped (not failed) also skips by default,
via the implicit success() check on a bare if:. This was verified
against GitHub Support statements and community reports, not official
documentation that explicitly confirms it end-to-end for this exact case.
After #663 merges and a product repo picks up the new ref, confirm with a
real docs-only push to a product repo's main:
-
The guarded jobs (
build-test/mergeinbakery-build-native.yml,
buildinbakery-build.yml) reportskipped, notfailure. -
The
readmejob in the same run also reportsskipped(verifying the
cascade, not just the direct guard). -
The product repo's CI aggregator (
alls-green/cigate, wherever
configured) treats that all-skipped run as passing, not failing.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
After pull request #663 merges, use a product repository with the updated ref and make a docs-only push to main. Inspect bakery-build-native.yml, bakery-build.yml, and the configured alls-green/ci gate; done means build-test/merge, build, readme, and the aggregate gate all report skipped or passing rather than failure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions
- Domain
- ci-cd, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100