Skip to content
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

Use git tags for chart releases #7537

Closed
jtnz opened this issue Sep 20, 2021 · 14 comments
Closed

Use git tags for chart releases #7537

jtnz opened this issue Sep 20, 2021 · 14 comments
Assignees
Labels
solved stale 15 days without activity triage Triage is needed

Comments

@jtnz
Copy link

jtnz commented Sep 20, 2021

Which chart:
All of them 😃

Is your feature request related to a problem? Please describe.
Helm can be tricky to navigate and it's really helpful when chart repos use git tags on releases of charts.

Describe the solution you'd like
Add tags when releasing, e.g. external-dns-5.4.7.

Additional context
Other popular repos do the same. So for example I can link to a specific values.yaml file, https://github.com/prometheus-community/helm-charts/blob/kube-prometheus-stack-9.4.4/charts/kube-prometheus-stack/values.yaml.

I do not however recommend following something like eks-charts. They bulk release charts under yet-another-version, which makes it a nightmare to work out what version of the software is running in a given chart version.

@yilmi
Copy link
Contributor

yilmi commented Sep 20, 2021

Hi @jtnz,

You should be able to get what you want with the current data included in our charts.

For example, if you want to fix on the values for a specific release, you can use something like helm show values bitnami/mongodb --version 10.26.1 to get the values for the mongodb chart version 10.26.1.

Regarding the tracking the application version (instead of chart version), the charts do have the appVersion field populated. If you want to check the application version for a specific chart version, you could use:

❯ helm show chart bitnami/mongodb --version 10.9.1
annotations:
  category: Database
apiVersion: v2
appVersion: 4.4.9
dependencies:
- name: common
  repository: https://charts.bitnami.com/bitnami
  tags:
  - bitnami-common
  version: 1.x.x
description: NoSQL document-oriented database that stores JSON-like documents with
  dynamic schemas, simplifying the integration of data in content-driven applications.
home: https://github.com/bitnami/charts/tree/master/bitnami/mongodb
icon: https://bitnami.com/assets/stacks/mongodb/img/mongodb-stack-220x234.png
keywords:
- mongodb
- database
- nosql
- cluster
- replicaset
- replication
maintainers:
- email: containers@bitnami.com
  name: Bitnami
name: mongodb
sources:
- https://github.com/bitnami/bitnami-docker-mongodb
- https://mongodb.org
version: 10.26.3

You can also search through the chart releases to find the latest chart for an application version by parsing the output of helm search repo -l bitnami/mongodb -o json

Let me know if I missed something or misunderstood your use case!

@jtnz
Copy link
Author

jtnz commented Sep 21, 2021

Hi @yilmi, thanks for your response.

I guess a little more of our use case might help. We use Flux to deploy everything, so don't use helm cli. Everything is just a k8s HelmRelease it git, and all the values are set in that object, so I prefer to link to the exact values.yaml that we're overriding. It would look something like this:

kind: HelmRelease
metadata:
  name: thanos
  namespace: monitoring
spec:
  releaseName: thanos
  chart:
    repository: https://charts.bitnami.com/bitnami
    name: thanos
    # Thanos: v0.22.0
    version: 6.0.1
  values:
    # https://github.com/bitnami/charts/blob/master/bitnami/thanos/values.yaml

    objstoreConfig:
...

So in that example there's no way to link to the values.yaml of that chart without tags. I hope that clarifies our use case, thanks.

@yilmi
Copy link
Contributor

yilmi commented Sep 21, 2021

@jtnz thanks for giving me a bit more context, let me rephrase see if I understood correctly: You use HelmRelease from fluxcd.io which providing a GitChartSource (repo + ref + path). This way you use a git tag as a ref to pull the latest chart for an application version.

It seems that Flux v1 is meant to be deprecated - fluxcd/flux#3320

Do you know if this is something that is not supported in Flux v2? (If you could provide references to their doc that'd be great).

Thanks
Yass

@jtnz
Copy link
Author

jtnz commented Sep 22, 2021

Not quite no. That example simply refers to the chart by version, in that repo URL. The "bad" line in my example was this one:

# https://github.com/bitnami/charts/blob/master/bitnami/thanos/values.yaml

Without a git tag, we cannot link to the correct version of that file for reference. Here's a nice example:

# https://github.com/prometheus-community/helm-charts/blob/prometheus-14.7.1/charts/prometheus/values.yaml

This might seem like a minor issue, but when dealing with many charts from multiple repos that all use differing versioning systems etc, every little bit helps.

@yilmi
Copy link
Contributor

yilmi commented Sep 22, 2021

Hi @jtnz, sounds indeed like something that could bring value. I opened an internal tracker to discuss this and decide if that's something we want to do and we'll let you know.

It may take some time, meanwhile I'm putting this request on-hold 👍

@yilmi yilmi added the on-hold Issues or Pull Requests with this label will never be considered stale label Sep 22, 2021
@jtnz
Copy link
Author

jtnz commented Sep 22, 2021

Hi @yilmi, that's awesome, thanks so much 👏 🙇

@hoshposh
Copy link

Did this request go anywhere? It would be great if the bitnami bot was able to accumulate a list of upstream reference points so that when I am researching the external-dns chart I can see which PRs, releases or commit it included from the upsteam site.

@javsalgar
Copy link
Contributor

Hi,

I'm afraid there are no plans to work on this at the moment. However, as we are in the process of performing changes in our repositories, I will forward this to the engineering team for consideration.

@carrodher
Copy link
Member

Unfortunately, this issue was created a long time ago and although there is an internal task to fix it, it was not prioritized as something to address in the short/mid term. It's not a technical reason but something related to the capacity since we're a small team.

Being said that, contributions via PRs are more than welcome in both repositories (containers and charts). Just in case you would like to contribute.

During this time, there are several releases of this asset and it's possible the issue has gone as part of other changes. If that's not the case and you are still experiencing this issue, please feel free to reopen it and we will re-evaluate it.

@bitnami-bot bitnami-bot added this to Solved in Support Oct 20, 2022
@github-actions github-actions bot moved this from Solved to Pending in Support Oct 20, 2022
@github-actions github-actions bot added solved and removed on-hold Issues or Pull Requests with this label will never be considered stale labels Oct 20, 2022
@carrodher carrodher moved this from Pending to Solved in Support Oct 20, 2022
@jtnz
Copy link
Author

jtnz commented Oct 21, 2022

FWIW this is still an issue with using this repo, amongst other issues.

What's interesting is that the sealed-secrets bitnami repo (and perhaps others) contain its own helm chart, including tagging the helm chart releases! This way we can easily reference a given values.yaml file.

IMHO this is a perfect example of what would solve this issue, and also a much better model of managing helm charts. This is essentially what Helm did/what happened when they retired the official repo.

@fmulero fmulero removed this from Solved in Support Jan 18, 2023
@randywatson1979
Copy link

randywatson1979 commented Feb 26, 2024

Well I was hoping to monitor new releases for particular charts or containers, but the lack of github version tags makes it impossible... so I'm kind of bafled why this convention is completely ignored. It would be very hard to compare specific values.yaml between specific chart versions unless you have to manually download the helm packages itself and extract the files.

@javsalgar javsalgar reopened this Feb 28, 2024
@github-actions github-actions bot added triage Triage is needed and removed solved labels Feb 28, 2024
@javsalgar
Copy link
Contributor

Just a note to let you know that this is being re-evaluated by the team. As soon as there are updates, we will let the community know.

Copy link

This Issue has been automatically marked as "stale" because it has not had recent activity (for 15 days). It will be closed if no further activity occurs. Thanks for the feedback.

@github-actions github-actions bot added the stale 15 days without activity label Mar 15, 2024
Copy link

Due to the lack of activity in the last 5 days since it was marked as "stale", we proceed to close this Issue. Do not hesitate to reopen it later if necessary.

@bitnami-bot bitnami-bot closed this as not planned Won't fix, can't repro, duplicate, stale Mar 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
solved stale 15 days without activity triage Triage is needed
Projects
None yet
Development

No branches or pull requests

7 participants