-
Notifications
You must be signed in to change notification settings - Fork 280
cert-manager: removing and preventing 'alternate' versions of Helm charts #402
Comments
@munnerz thanks for bringing this up here. The first thing I'd like to point out is that multiple charts for the same application are technically ok. For example, someone might provide a chart with a simple install while someone else might provide something far more configurable. Multiple charts from different people are ok. I'm reminded that there are numerous debian packages for mysql or mariadb out there. Some are not very discoverable but they exist. That being said, we have long had conversations on highlighting the "official" chart where possible. For the case where the project itself puts out a chart. This is not something we have implemented in the Helm Hub. Might I ask that you file an issue on Artifact Hub about this. I will follow-up on your issue there but that way you can track it. The long term plan for the Helm Hub is up in the air. Ideally, we would like the Artifact Hub to replace it. Either with the software or with the actual site. The Artifact Hub has the ability for people to star charts. I think that's also a nice way to help indicate which to use. We are looking at other markers and if you have suggestions please file issues. Quay is listed as being available in China so I would suspect your images are as well. There is a Helm Hub like site for China at https://developer.aliyun.com/hub/. This is done by Alibaba who tries to make sure the charts work in China. There is no perfect solution to this problem. We can do much better, though. Suggestions are welcome. |
@munnerz thanks for raising the issue regarding our We should delete that chart from https://github.com/cloudposse/charts, but will preserve it in our chart repository for people still using it. It ended up not working well, for the reasons Jetstack warned about and that you raised, which is why we do not use it anymore. |
@osterman prior to deleting it, you could mark it as deprecated. This would make it disappear from displays by default but still be discoverable. |
I created an issue on artifacthub/hub#542 for official versions of artifacts. |
So we've gone ahead and deprecated the chart and will subsequently remove it. Also, not sure if part of the concern is related to the That said, to @mattfarina 's point, we don't see anything wrong with having alternate versions of the chart published; that is the open-source way. =) Blocking alternate charts would be very much against the ethos of open-source (and probably the law of open source licenses). More importantly, alternate chart versions provide field tests of alternatives to the "official" chart that the software maintainers can consider in their future plans without requiring them to make an immediate decision. Cloud Posse publishes several charts that we believe are "better" in some substantial way than the "official" charts or else we would not have bothered to create and publish them. Of course, "better" is subjective, and we do not try to persuade anyone to use our charts, but every chart we publish is one we have used successfully at some point in time, so obviously we see value in them as compared to the pre-existing charts. While we always try to work with chart creators to have them update their charts, the process is often too slow when we are faced with an issue preventing us from using the existing chart right away on our customer engagements. In the case of the That said, we fully support efforts to highlight the chart published by the maintainers of the underlying software. We're grateful for the hard work Jetstack puts into the |
@osterman You bring up a great point on the |
Now that Helm Hub has moved to Artifact Hub, and we have an issue for this there #402 (comment), let's close this one. |
We had issues using the upstream chart and reached out several times to negotiate with the upstream maintainer about it. They closed those issues, which left us with requirements that the upstream chart did not support. Now that helm and this chart have matured, the default cert-manager have finally met our requirements and the fork has been removed. Related to the topic of alternate versions. There are a number of situations where maintainers are not interested in supporting or allowing through configuration to support client use cases. In CertManager's case, we had a requirement that the chart include all dependencies in the chart. I believe this is actually outlined in the original helm charts repo, We had to make this alternate chart to satisfy our use case. The ability to publish that alternative chart so others could take advantage of the work is fundamental to OSS. Ideally, you can negotiate with the original maintainers so forking is not necessary. It is not always possible to do so and maintaining an internal fork costs nearly as much as publishing an open source one, sometimes it costs a lot more to keep the repo private. It's advantageous to all users and future users that forks are available. If you ask most OSS project founders, they started by loving a tool. Yet, that tool had just one small thing that they didn't like, so they forked or made a similar project that does this one small thing. I have been on the other side trying to sort out which chart is the 'best version'. Grafana and Grafana operator are good examples of this. It can be confusing to sort out which one to use, but I don't expect Helm Hub to answer that question for me. As long as the alternative chart provides a maintainer contact, then a user can reach out for detailed questions about the nature of this alternative chart. |
Hey all 👋
I've been taking a look through various Helm chart repos (i.e. artifacthub, helm hub, chartcenter etc) and have found that there are a number of 'alternate' versions of the cert-manager Helm chart being published and listed on the Helm Hub: https://hub.helm.sh/charts?q=cert-manager
Whilst I am all in favour of openness and allowing people to do what they want with our software, I am concerned that this may 1) confuse end-users and 2) put users on an 'unsupported' release, which we will have little to no recourse to correct as a project.
If there are changes needed in the cert-manager Helm chart, it'd be far more productive if these could be proposed, discussed and merged upstream so that we can properly take care of users.
There are currently three repositories that contain a variant of the cert-manager chart (all of which are either incorrectly published with the wrong version number, contain patches that are now already upstreamed and implemented in a manner that is dangerous for end-users, or otherwise out of date):
infobloxopen
(managed by @drewwells) - which appears to just be a direct copy (no changes to the README at least), on an outdated version. The repo in question also reads as if it is cert-manager specific based on the domain name too.choerodon
(managed by @vinkdong) - from what I can tell, this exists to provide a mirror for our Helm chart so it can be used in China, although I am not certain on the version being published here without digging into the chart further myself. I am uncertain whether our main Helm chart (jetstack/cert-manager
) can be fetched in China, and do appreciate the efforts from the community to help adoption in this region. If that is the case, it'd be great to work with you @vinkdong to avoid us confusing others users (and to sort out version numbering, or for us to ensure the jetstack repo is accessible in China).cloudposse
(managed by https://cloudposse.com/, added by @osterman) - this is a very old version of our Helm chart that includes CRDs as part of the Helm chart in an unsafe way (via thecrd-install
annotation) - without going into the conversation around use of this annotation again, to summarise, it prevents the cert-manager team's ability to manage CRD versions. Our own Helm chart already supports this functionality nowadays anyway, in a safe way, via theinstallCRDs
option in ourvalues.yaml
.What's the best way to go about addressing this? If the cc'd maintainers could respond here with their thoughts, and/or make the change to remove these charts, it'd be greatly appreciated.
As an aside, is there any kind of process to handle this in other instances? As these sorts of 'registries' develop, it's going to become more and more of an issue (especially if big corp legal teams get involved 😅)
Thanks! 🚀
The text was updated successfully, but these errors were encountered: