how to build umbrella chart with exact dependency helm chart version in requirements.yaml file

8/23/2018

We have Micro services application which has different helm charts for each MS, and there is umbrella chart which adds all these charts and create an integrated chart for simple deployment purpose, we use Nexus3 as a helm repo.
In umbrella chart requirements.yaml dependencies are added with version, repository.
When we specify exact chart version in requirements.yaml, sometimes it fails to find that chart in nexus repo, though it actually exists. After some investigation found that it looks for the version in index.yaml of that nexus repo, if required version is not same as like the one in index.yaml file it fails.
index.yaml contains latest version always, but what if we want to work with different version than latest one ? how can we fix this ?
Below is the snippet of requirements.yaml file

dependencies: - name: ms1 version: "1.3.0" repository: http://user:passwd@nexus_host:8081/repository/helm_chart_repo/ms1 - name: ms2 version: "1.3.0" repository: http://user:passwd@nexus_host:8081/repository/helm_chart_repo/ms2 - name: ms3 version: "1.2.0" repository: http://user:passwd@nexus_host:8081/repository/helm_chart_repo/ms3 - name: ms4 version: "1.3.1" repository: http://user:passwd@nexus_host:8081/repository/helm_chart_repo/ms4

-- Reddysekhar Gaduputi
kubernetes-helm
nexus
nexus3

1 Answer

8/24/2018

If the required version of the Helm Chart exists in the repository, but does not exist in index.yaml, then it means that your index.yaml is not correct. It should contain all the versions that are in the repository.

Check if helm repo index <directory> is always performed after new version is added.

-- RafaƂ Leszko
Source: StackOverflow