diff --git a/generator/templates/matrix/manifest.yaml.tmpl b/generator/templates/matrix/manifest.yaml.tmpl index 218afe4..bacb6be 100644 --- a/generator/templates/matrix/manifest.yaml.tmpl +++ b/generator/templates/matrix/manifest.yaml.tmpl @@ -5,6 +5,17 @@ when: depends_on: - build +# oleks/ci-scripts#9: run even if a per-arch matrix leg failed. Without +# `runs_on`, Woodpecker skips a dependent workflow outright once any leg of +# `build` fails, so a lone arm64 success would silently produce no image at +# all. `{script} --manifest` itself must probe the registry for which +# per-arch tags actually landed (not assume a fixed arch list, and not rely +# on step/pipeline success status) and build the manifest from whatever +# exists — a partial manifest beats none. +runs_on: + - success + - failure + # Thin wrapper (cluster #196, emmett#44): the SAME {script} composes the # per-arch tags into the multi-arch : + :latest manifest list. # PUBLISH=1 is the only CI-specific override (local default is dry-run).