chore(release): cut 0.37.0 and version the chart with the operator - #50
chore(release): cut 0.37.0 and version the chart with the operator#50jleni wants to merge 1 commit into
Conversation
fc52581 to
f68c4b7
Compare
|
Scope grew slightly after discussion — the chart now ships on the operator's version line, published from the same
A chart-only fix is now a patch release of the whole thing, not an Verified locally: gate passes in both internal and tag mode, fails as expected on a chart-version mismatch and on a wrong tag; The demo keeps its vendored Follow-up, per the discussion on #46: merge that workflow as-is (it only fires on |
0.36.0 is abandoned. Its tag was pushed at f56f7ed without a version bump, so the release gate failed (workspace 0.35.0 != tag 0.36.0) and nothing was published: the crates.io job failed on the gate, CI skipped release-cli and never ran the image push, and every package publisher was cancelled. The v0.36.0 GitHub release was also created by hand, which — with immutable releases on this repo — can lock the release and its tag, so the number is skipped rather than re-cut. Chart versioning changes with this release: the chart ships from the same `v*` tag as the operator, so `version:` == `appVersion:` == the workspace version. One-time jump for the chart, 0.21.19 -> 0.37.0 (monotonic, so helm accepts it; nothing pins the chart by version — int-pro installs it by path from its GitRepository). - `just bump X.Y.Z` now rewrites the chart's `version:` as well as `appVersion:` - the version gate asserts it, alongside appVersion and nix/package.nix A chart-only fix is therefore a patch release of the whole thing. It is deliberately NOT an `X.Y.Z-1` suffix: semver reads `-1` as a PRERELEASE of X.Y.Z, so it would sort BELOW the release it means to fix and helm hides it from search and dependency resolution unless --devel is passed. Build metadata (`X.Y.Z+1`) is no better — ignored for precedence, so `helm upgrade` would not see it as newer, and OCI tags cannot carry `+`.
f68c4b7 to
525dbd6
Compare
|
Superseded by #52 — renaming the branch to |
Summary
Chart.yamlappVersionandChart.yamlversion(viajust bump 0.37.0)just bumpnow rewrites the chart'sversion:too; the version gate asserts itWhy 0.37.0 and not 0.36.0
The
v0.36.0tag was pushed at f56f7ed (the #49 merge) without a preceding version bump, so the release gate failed:Nothing was published for 0.36.0 — the crates.io job failed on the gate, CI's
version-consistencyfailed sorelease-cliwas skipped and the image push never ran, and every package publisher (apt/aur/choco/winget/brew/scoop) was cancelled. The GitHub release for it has zero assets.The number is skipped rather than re-cut because that release was also created by hand, and per the trigger comment in
ci.ymlthis repo has immutable releases enabled — a hand-published release can lock both its assets and its tag, which is exactly the staterelease-clicannot upload into. Skipping to 0.37.0 avoids tag surgery entirely.Chart versioning
The chart now ships from the same
v*tag as the operator (see #51), soversion:==appVersion:== the workspace version. One-time jump for the chart: 0.21.19 → 0.37.0. Monotonic, so helm accepts it, and nothing pins the chart by version today — int-pro installs it by path from its GitRepository.A chart-only fix is therefore a patch release of the whole thing, not an
X.Y.Z-1suffix: semver reads-1as a prerelease of X.Y.Z, so it would sort below the release it means to fix, and helm hides prereleases from search and dependency resolution without--devel. Build metadata (X.Y.Z+1) is no better — ignored for precedence, sohelm upgradewould not treat it as newer, and OCI tags cannot carry+.Validation
tag 0.37.0 == workspace == Chart.yaml version + appVersion)just bump 0.37.0is idempotent and sets all three fieldsRelease procedure after merge
Cut from
mainwithjust release— tag push only, no hand-created GitHub release._release-rust.ymlcreates the release as a draft, attaches the signed assets, and publishes it, and that publish event is what fires the crates.io and package-publish cascade.