Search code examples
kubernetes-helmhelm3container-registry

Helm v3.7 How to specify repository name of chart


i just upgraded helm to the latest version. We were still running on a version before the breaking changes of 3.7.

So far we have pushed a chart (in Azure Pipeline) into the repo (ACR) as follows:

 - script: |
      helm chart save Chart $(ACR_NAME).azurecr.io/helm/storage-api:$(BUILD_VERSION)
    displayName: save new chart 

  - script: |
      helm chart push $(ACR_NAME).azurecr.io/helm/storage-api:$(BUILD_VERSION)
    displayName: push new chart 

in this example we call the repo storage-api. But in our chart.yaml the chart name is specified like this: name: storage-chart

Since the documentation is not so deep for the new version i dont find an option to specify the name, if i append the name like before a new subfolder will be created in the ACR.

so now we push them like this:

- script: |
      helm package Chart --app-version $(BUILD_VERSION) --version $(BUILD_VERSION)
    displayName: save new chart version

  - script: |
      helm push storage-chart-$(BUILD_VERSION).tgz oci://$(ACR_NAME).azurecr.io/helm/
    displayName: push new chart version

helm package ... creates a .tgz with the name specified in Chart.yaml this has the consequence, that our repo for this service has a new name, the one which is specified in the Chart.yaml. So now its storage-chart instead of storage-api

Since we have an public ACR changing the names is no option.

Is there a way to specify the repo name in the helm command? Or do I have to change the name in `Chart.yaml``


Solution

  • I found out that it is no longer possible to determine the repository name.

    As of v3.7, this is always derived from the chart name in chart.yaml.

    see here