ci: call the org-wide reusable release-oci instead of a local copy - #35
Merged
Conversation
Replaces a 137-line copy with triggers plus a `uses:`. The publish logic now lives once in krateo-platformops/.github, so the file's own claim of being identical across every repo is enforced by construction rather than by whoever remembers to copy it — the property that already failed for release-tag.yaml. The shared workflow additionally gates the publish on every chart-referenced image existing, which is the guard for oasgen-provider#62. This repo's copy was byte-identical to the canonical baseline; nothing local is lost.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Converts this repo's
release-oci.yamlfrom a 137-line local copy into a call to the org-wide reusable added in krateo-platformops/.github#3.Why
The file carried its own header asserting it was "identical byte-for-byte across ALL repos". Identity by discipline is exactly what failed for
release-tag.yaml, where two repos silently diverged onresource-policy: keepand nobody noticed until someone went looking. Calling a shared workflow makes that property structural instead of aspirational.It also gates the publish on every chart-referenced image existing. A chart naming an image that was never published used to publish cleanly and then
ImagePullBackOffon every install, with the symptom surfacing several layers from the cause — that is krateo-platformops/oasgen-provider#62, where one stale tag took out 14 generated controllers and the visible failure was an unrelated job stuck atInit:0/1.What changed
Only the trigger block stays local. The publish logic — collision guard, first-class chart discovery, placeholder substitution, dependency handling, package and push — now lives once in the org repo, ported verbatim.
Verified before opening
This repo's copy was byte-identical to the canonical baseline, so nothing local is lost. Repos whose copy differed are being handled separately rather than swept into a mechanical change.