如何在 requirements.yaml 文件中构建具有精确依赖性 helm chart 版本的伞形图
how to build umbrella chart with exact dependency helm chart version in requirements.yaml file
我们有微服务应用程序,每个 MS 都有不同的 helm
图表,并且有一个伞状图表可以添加所有这些图表并创建一个集成图表以实现简单的部署目的,我们使用 Nexus3 作为 helm repo .
在伞形图中 requirements.yaml
依赖项随版本、存储库一起添加。
当我们在 requirements.yaml
中指定确切的图表版本时,有时它无法在 nexus 存储库中找到该图表,尽管它确实存在。经过一些调查发现它在该 nexus 回购的 index.yaml
中查找版本,如果所需版本与 index.yaml
文件中的版本不同,它会失败。
index.yaml
始终包含最新版本,但是如果我们想使用与最新版本不同的版本怎么办?我们该如何解决这个问题?
以下是 requirements.yaml
文件
的片段
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
如果存储库中存在所需的 Helm Chart 版本,但 index.yaml
中不存在,则表示您的 index.yaml
不正确。它应该包含存储库中的所有版本。
检查添加新版本后是否总是执行helm repo index <directory>
。
我们有微服务应用程序,每个 MS 都有不同的 helm
图表,并且有一个伞状图表可以添加所有这些图表并创建一个集成图表以实现简单的部署目的,我们使用 Nexus3 作为 helm repo .
在伞形图中 requirements.yaml
依赖项随版本、存储库一起添加。
当我们在 requirements.yaml
中指定确切的图表版本时,有时它无法在 nexus 存储库中找到该图表,尽管它确实存在。经过一些调查发现它在该 nexus 回购的 index.yaml
中查找版本,如果所需版本与 index.yaml
文件中的版本不同,它会失败。
index.yaml
始终包含最新版本,但是如果我们想使用与最新版本不同的版本怎么办?我们该如何解决这个问题?
以下是 requirements.yaml
文件
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
如果存储库中存在所需的 Helm Chart 版本,但 index.yaml
中不存在,则表示您的 index.yaml
不正确。它应该包含存储库中的所有版本。
检查添加新版本后是否总是执行helm repo index <directory>
。