Conversation
kargo.labels includes helm.sh/chart, and it was applied to the pod templates as well as to the objects, so every chart version bump rewrote the pod specs and restarted all Kargo pods on upgrade with nothing else changed. Add kargo.podLabels, the same label set without helm.sh/chart, and use it in the six deployments and the garbage-collector CronJob pod template. Signed-off-by: Ilia Lazebnik <[email protected]>
✅ Deploy Preview for docs-kargo-io ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
4 tasks
Member
|
You're not wrong here, but I swear we already fixed this ages ago. I want to research a bit and see if that regressed somehow. |
krancour
self-requested a review
September 14, 2026 00:03
Member
I recall fixing this in our enterprise distribution, but not OSS, so that might be what you are thinking. |
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
Closes #7191
kargo.labelsincludeshelm.sh/chart— the chart version — and it was applied to the pod templates as well as to the objects. Every chart version bump therefore rewrote the pod specs and Kubernetes restarted all Kargo pods onhelm upgrade, even when nothing functional had changed.This adds
kargo.podLabels, the same label set withouthelm.sh/chart, and uses it in the six deployments (api, controller, management-controller, dex-server, kubernetes-webhooks-server, external-webhooks-server) and the garbage-collector CronJob's pod template. The objects keep the fullkargo.labels, so the chart version is still visible where it belongs, and pods keepapp.kubernetes.io/version, name, instance, managed-by and component.The CronJob's
jobTemplate.metadata.labelsis deliberately left alone — those are Job object labels and don't cause restarts.Verified by rendering the chart against a bumped version: no
helm.sh/chartremains inside any pod template.helm unittestpasses (154 tests, 48 suites).Checklist
Eligibility
kind/proposal,needs discussion,needs research,maintainer only,area/security,size/large,size/x-large,size/xx-large).Quality
AI Use Disclosure
This PR was written:
Sign-Off
All commits:
git commit -s) (required)git commit -S) (encouraged)