-
Notifications
You must be signed in to change notification settings - Fork 112
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
feat: add support for pushing chart packages to oci #183
Comments
Hi all, I would like to work on this task as I need this too. Questions would be for me:
Looking forward for you feedback. |
I hacked a solution in this PR: fluxcd-community/helm-charts#94 |
yeah @dmccaffery, that looks cool! Thought the same, but want it to be part of |
Me too! 😁 |
Do you prefer the |
Is somebody activly working on this? |
I can plan to work on this but if you have time @dirien go for it i would implement the |
I'm also happy to work on this now that agreement to implement a separate command (push) is there. I will have time this coming weekend. If anyone else wants to tackle it before then, let me know so we don't duplicate effort. Thanks! |
As @dmccaffery did the initial issue, it's fair that he has the honour to implement it! Let me know if I can help though! |
Would there also likely be an execution speed improvement? |
What I found digging through the ends of this thread, you can do this today and it's not through https://github.com/fluxcd-community/helm-charts/pull/94/files#diff-87db21a973eed4fef5f32b267aa60fcee5cbdf03c67fafdc2a9b553bb0b15f34 If you are using chart-releaser-action today, and you just want to add OCI (keeping the original I'd like to see the I think this dual-publish approach should work for most basic uses, but where I think it will have trouble anyone publishing an umbrella chart. Those will need to either make the full switch (new charts, parent and child, umbrella and what goes under it, all published on OCI, with all references in OCI) or publish different charts in either source, else the users may wind up with charts from both sources, or references in the OCI chart that point back to the old helm repository – and they won't get the benefits as they will still end up downloading and parsing @Ornias1993 OCI represents all kind of speed improvements, the OCI uses a tag index instead, where the tag is a semver (same as Helm has always used) and tag indexes are just way cheaper to parse than index.yaml with metadata for every release. If you're experiencing speed problems, that is most likely where they came from? Just coming up to speed on this issue, I'm interested to see it finished too 👍 Large chart hosts like bitnami, etc. have the most to gain from this upgrade, since anyone that automates upgrades with Helm will be downloading their My knowledge about the chart-releaser project is a bit lacking, does the chart-releaser handle umbrella charts already? |
Follow-on to my last post, it seems there are some simplifications we can make and some of my assumptions were too cautious
Turns out I guess that's not as big of an issue as I imagined, since the dependencies will be packaged together in the OCI artifact, the dependency paths only get invoked when you want to run Is anybody making progress on this, can we make progress? I was prepared to update the github actions workflow, but I was a bit daunted by the go project underneath (and I could try diving in tomorrow, but if it turned out somebody already has...) |
There is another issue here, and I think that might also hit prometheus-community @kingdonb |
@Ornias1993 That's true-ish... there is a media type on each image layer, there are configurations which you can use to bundle image layers of different types, but a straight If you want to release your charts as OCI images, I recommend following the pattern that you see here: https://github.com/stefanprodan?tab=packages&repo_name=podinfo Create a repo of the same name, and push app images there (in this case Then, in your organization (or user) create an image repo with I plan to try re-publishing Hephy Workflow as OCI charts in a day or two and we'll see how it goes there. Pushing a mix of image types to the same repo is inadvisable because you can no longer take advantage of basic semver tags and pattern matching to decide which tag is the latest in your series, you need a way to distinguish between tags of the different types (and scanning the images to read their metadata is expensive and does not scale to thousands of tags, as Flux project knows from our history and experience...) |
We are using OCI push for months now and it just works great. |
Add a command, such as
push
similar toupload
that pushes chart packages to an oci registry.The cr cli can rely on the push api within helm to perform the work.
OCI support has reached general availability as of helm v3.8.1.
The text was updated successfully, but these errors were encountered: