-
Notifications
You must be signed in to change notification settings - Fork 981
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support the Semver2 standard #4248
Comments
@jonathan-innis (reply from #5305) I'm specifically talking about fixing the release process so future releases are correctly versioned. AFAIK the OCI tag needs to match the chart version, which should be a valid SemVer 2 version; so you could release each chart twice but I'm not sure what the value would be considering the current pattern is actually incorrect (and doesn't match the actual chart file in the repo). |
I'm fine with swapping this over on newer versions of karpenter with some sort of breaking change notice, but the important thing to note here is that this will absolutely break anyone who has any logic that is relying on the handling of that Another important question to me here (that I haven't had a chance to test yet) is if updating to using this new convention would fix the helm version parsing logic. To my question from the other ticket, will helm parsing work fine if there are other tags in the repo that hold the |
Updating to the strict format does work in an existing repo. ACK made this switch a couple months back. You can see example by looking at history of example chart here https://gallery.ecr.aws/aws-controllers-k8s/eks-chart. Edit: Looking closer at the tag history, it looks like we backported releases in the correct format, so this needs some more investigation. |
@jonathan-innis that's the benefit of fixing this while karpenter is still at
I can confirm that I think it'd be worth backporting tags for Karpenter versions using the beta APIs. |
Makes sense. I agree that we should ideally do this during v1 with a breaking change warning in our Upgrade Guide docs about the change. I'm not sure this is something that someone on our team would have immediate bandwidth to do. @stevehipwell is this something that you would be willing to help out with? I don't suspect that the changes here would be too large. |
@jonathan-innis I'd be happy to pick this up. |
Sounds great @stevehipwell. I've assigned you to it! Looking forward to a PR! |
Linking an issue where someone hit a problem with this when using Flux: fluxcd/helm-controller#670 |
Description
What problem are you trying to solve?
Attempts to get the latest tags utilizing semver ranges via Helm or FluxCD's HelmRelease resource will fail.
This is caused by all versions of karpenter helm chart being prefixed with
v
.In fact, if you look at public.ecr.aws/karpenter, you'll see the following tags.
Due to this version format, the helm pull command will fail to get the latest tags using semver range.
The tag list we get via the
tags/list
endpoint is 1576,However, since HELM's implementation looks like this, none of the valid semvers are filtered out.
"Invalid characters in version."
tagVersions - []*github.com/Masterminds/semver/v3.Version len: 0, cap: 0, nil
How important is this feature to you?
https://helm.sh/docs/topics/charts/#charts-and-versioning
To keep track of the latest tags using semver ranges, why not use the available semvers for the StrictNewVersion method and upload them to the public ecr repo?
The text was updated successfully, but these errors were encountered: