feat(chart): Add flexible image tag configuration with priority-based overrides #628
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
This PR introduces a flexible image tag configuration system for the Helm chart, allowing users to override image tags at different levels with a clear priority order. Additionally, this PR fixes an incorrect reference where
.Chart.Versionwas being used instead of.Chart.AppVersionfor image tags.Changes Made
Added
tagfield to all component image configurations invalues.yaml:Implemented priority-based tag resolution using Helm's
defaultfunction:Fixed incorrect Chart reference: Changed all occurrences of
.Chart.Versionto.Chart.AppVersionfor image tags.Chart.Versionis intended for the Helm chart version.Chart.AppVersionis the correct field for application/image versionsUpdated Templates
deployments/kai-scheduler/templates/kai-config.yamldeployments/kai-scheduler/templates/services/operator.yamldeployments/kai-scheduler/templates/crd-upgrader.yamlBenefits
global.tagto apply a tag to all components.Chart.Versionfor image tagsUsage Examples
Related Issues
N/A
Checklist
helm templatecommand)Breaking Changes
None. This change is fully backward compatible. Existing deployments will continue to use
global.tag(default: "latest") or fall back to.Chart.AppVersionifglobal.tagis not set.Additional Notes
Testing
The changes were validated using
helm template:Default behavior (uses global.tag):
helm template kai-scheduler deployments/kai-scheduler # Result: All images use tag "latest" from global.tagComponent-specific override:
helm template kai-scheduler deployments/kai-scheduler --set operator.image.tag=v1.2.3 --set global.tag=v1.0.0 # Result: operator uses v1.2.3, other components use v1.0.0Fallback to Chart.AppVersion:
Implementation Details
All tag references now use the pattern:
This ensures consistent behavior across all components while maintaining maximum flexibility for users.