feat(release): publish the Helm chart alongside the self-host images - #621
Merged
Conversation
Nothing published the chart. Every version so far went up by hand, which is how it drifted to 0.1.1 while the app reached 1.0.0 — and why 1.0.0 had to be pushed manually after the release was already out. Package and push it from merge-manifests, after the images it references exist, so a chart is never published pointing at images that failed to build. version and appVersion are stamped from the release tag rather than read from Chart.yaml, so the published chart cannot disagree with the release it deploys. Chart.yaml keeps its own values for local `helm template` and `helm lint`; only the published artifact is stamped.
19 tasks
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.
Description
Nothing publishes the Helm chart. Every version so far has gone up by hand, which is how it drifted to
0.1.1while the app reached1.0.0— and why1.0.0had to be pushed manually after the release was already out.Packages and pushes the chart from
merge-manifests, after the images it references exist, so a chart is never published pointing at images that failed to build.versionandappVersionare stamped from the release tag withhelm package --version/--app-versionrather than read fromChart.yaml, so the published chart cannot disagree with the release it deploys and no one has to remember to bump a file.Chart.yamlkeeps its own values for localhelm template/helm lint; only the published artifact is stamped.Type of Change
How Has This Been Tested?
Workflow YAML parses and the two new steps land in the right order at the end of
merge-manifests:The exact
helm packagecommand was run locally against the current chart:The push itself can only be exercised by a real release run.
Checklist
Additional Notes
One thing to check before relying on this.
ghcr.io/testplanit/charts/testplanitwas created by hand, so the repository may not hold Write access to that package.GITHUB_TOKENcan push to a package linked to the repo with the Write role, but cannot claim one it has no access to — the same wallrelease-selfhost.ymlhit on its first run againsttestplanit-selfhost(denied: permission_denied: write_package).Worth confirming on the package's Manage Actions access page that the
testplanitrepo is listed with Write before the next release, rather than discovering it mid-release.Prereleases are already excluded at the trigger level (
!v*-*), so beta tags publish no chart.