作者:Matt Fisher
这是Helm 3预览:探索我们的未来博客文章7部中的第5部,讨论关于Chart依赖项以及Helm 2和Helm 3的差异。(查看我们之前关于发布管理的第4部。)
已经打包(使用helm package)用于Helm 2的Chart可以使用helm 3安装,但是Chart开发工作流已经进行了大修,因此需要进行一些更改才能继续使用Helm 3开发Chart。变更的组件之一是Chart依赖关系管理系统。
Chart依赖关系管理系统从requirements.yaml和requirements.lock迁到Chart.yaml和Chart.lock,这意味着依赖于helm dependency命令的Chart将需要一些调整才能在Helm 3中工作。
让我们看一个例子。在Helm 2的Chart中添加一个依赖项,然后看看在Helm 3中变化如何。
在Helm 2中,requirements.yaml是:
dependencies:
- name: mariadb
version: 5.x.x
repository: https://kubernetes-charts.storage.googleapis.com/
condition: mariadb.enabled
tags:
- database
在Helm 3中,同样的依赖关系表现在Chart.yaml:
dependencies:
- name: mariadb
version: 5.x.x
repository: https://kubernetes-charts.storage.googleapis.com/
condition: mariadb.enabled
tags:
- database
Chart仍然被下载并放置在charts/目录中,因此被放到charts/目录中的子Chart将继续工作,而无需修改。
我们的下一篇博客文章讨论Chart库。不要错过Helm 3预览:探索我们的未来博客系列共7部文章。