bitnami / charts

Bitnami Helm Charts
https://bitnami.com
Other
9.04k stars 9.22k forks source link

Cannot pull latest external-dns chart #30519

Closed iul1an closed 2 days ago

iul1an commented 2 days ago

Name and Version

bitnami/external-dns 8.6.0

What architecture are you using?

x86-64

What steps will reproduce the bug?

Try to pull the latest chart version, v8.6.0:

$ helm pull --destination /tmp/ --version 8.6.0 --repo https://charts.bitnami.com/bitnami external-dns
Error: invalid_reference: invalid tag
~ took 3s

The previous version of the chart can be pulled without any issues:

$  helm pull --destination /tmp/ --version 8.5.1 --repo https://charts.bitnami.com/bitnami external-dns
~ took 4s

While troubleshooting the issue, I discovered that the latest chart version uses OCI URLs. The change is related to https://github.com/bitnami/charts/issues/30110

$ curl -sL https://charts.bitnami.com/bitnami/index.yaml | yq '.entries["external-dns"][] | select(.version == "8.6.0") | .urls'
- oci://registry-1.docker.io/bitnamicharts/external-dns:8.6.0
~ took 1s

vs v8.5.1:

$ curl -sL https://charts.bitnami.com/bitnami/index.yaml | yq '.entries["external-dns"][] | select(.version == "8.5.1") | .urls'
- https://charts.bitnami.com/bitnami/external-dns-8.5.1.tgz
~ took 1s

As a workaround, I'm using the DockerHub OCI repo directly: oci://registry-1.docker.io/bitnamicharts/

Additional information

Helm version: v3.16.2

I'm using ArgoCD to deploy the chart and it runs the exact helm command I mentioned.

iul1an commented 2 days ago

Looks like a bug in Helm itself

This fails:

# Try to pull the chart without adding the repository with "helm repo add"
$ helm pull --version 8.6.0 --repo https://charts.bitnami.com/bitnami external-dns
Error: invalid_reference: invalid tag
~ took 3s

This works: Add the Bitnami repository

$ helm repo add bitnami https://charts.bitnami.com/bitnami            
"bitnami" has been added to your repositories
~ took 2s

Update the Bitnami repository

$ helm repo update                                        
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "bitnami" chart repository
Update Complete. ⎈Happy Helming!⎈
~ took 1s

Pull the chart

$ helm pull --version 8.6.0 bitnami/external-dns                     
~ took 3s
carrodher commented 2 days ago

The installation methods described in those comments appear to combine different approaches recommended by Bitnami. Traditionally, Bitnami Helm charts were consumed by adding the Bitnami repository and installing the desired chart, like this:

helm repo add bitnami https://charts.bitnami.com/bitnami
helm pull bitnami/external-dns --version 8.6.0

A few months ago, Bitnami announced support for the OCI format, and since then, the recommended installation method has been to use OCI packages stored in DockerHub:

helm pull oci://registry-1.docker.io/bitnamicharts/external-dns --version 8.6.0

As outlined in our recent announcement, the first method is now being deprecated. Behind the scenes, the Bitnami repository is redirecting to OCI artifacts. For more details, see the full announcement: Bitnami Helm Charts Moving to OCI.

iul1an commented 2 days ago

I switched to OCI. Thank you @carrodher