Repository navigation
Unify chart and image release into a single tag-triggered workflow - #71
Merged
Merged
Conversation
Previously the chart (on push to main) and images (on tag push) were released by two separate, differently-triggered workflows, so a release could end up with an image but no matching chart release, or vice versa. Replace image-release.yml and chart-release.yml with a single release.yml, modeled on KongZ/kubeai-chatbot's release workflow, that triggers on a single version tag (e.g. 1.2.3) and runs three independent jobs: release-piggy-env, release-piggy-webhooks, and release-chart. All three run in parallel from the same trigger, so tagging a release always produces the chart and both images together.
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
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.
Summary
Previously, releases were split across two independently-triggered workflows:
chart-release.ymlran on every push tomain(creating a chart release wheneverChart.yaml's version changed)image-release.ymlran on a version tag push (e.g.1.2.3), building and pushing both Docker imagesThis meant a chart release and an image release could drift apart — e.g. a chart bump merged to
mainwithout a corresponding tag, or a tag pushed without a matching chart version bump.This PR replaces both with a single
release.yml, modeled on KongZ/kubeai-chatbot's release workflow:[0-9]+.[0-9]+.[0-9]+), same pattern the oldimage-release.ymlusedrelease-piggy-env,release-piggy-webhooks,release-chartpiggysec.comHelm repo viagh-pages) — this is a trigger/structure consolidation, not a change to how each artifact is built or publishedchart-release.ymlon everymainpush, sincepull_request.ymlalready lints every change before it merges tomain; re-linting again at tag time was redundantRelease flow after this change
Bump
Chart.yaml'sversion/appVersion, merge tomain, then push a single tag like1.2.4— that one tag now produces both Docker images and the chart release together.Testing
image-release.yml/chart-release.ymlsteps to confirm no unintended changes to build args, tags, or the chart-releaser config