依赖
最佳实践的这部分阐述Chart.yaml中声明的dependencies。
版本
如果有可能的话,使用版本范围而不是某个固定的版本。建议的默认设置是使用补丁级别的版本的匹配:
version: ~1.2.3
version: ~1.2.3
这样会匹配1.2.3以及该版本的任何补丁,也就是说,~1.2.3相当于>= 1.2.3,< 1.3.0
关于完整的版本匹配语法,请参照 语义版本文档 。
https://github.com/Masterminds/semver#checking-version-constraints
预发布版本
上述版本约束不适用于预发布版本。比如 version: ~1.2.3可以匹配version: ~1.2.4 但不能匹配version: ~1.2.3-1。预发布及补丁级别匹配如下:
version: ~1.2.3-0
version: ~1.2.3-0
仓库URL
如果可能的话,使用https://仓库URL,而不是http://URL.
如果这个仓库已经被添加到仓库索引文件中,仓库名称可以作为URL的别名。使用alias:或@后跟仓库名称。
文件URL(file://...)被认为是一种有固定部署管道组装的chart的“特例”。
当使用 下载器插件 时,URL会使用特定于插件的方案。注意,chart的用户需要安装一个支持该方案的插件来更新或构建依赖关系。
当repository字段为空时,Helm无法对依赖项执行依赖管理操作。在这种场景下,Helm假定依赖关系位于charts文件夹的子目录中,名称与依赖关系的name属性相同。
条件和标签可以被添加到任意可选的依赖中。
条件的首先格式是:
condition: somechart.enabled
condition: somechart.enabled
somechart是依赖的chart名称。
当多个子chart(依赖)一起提供可选货可交换的特性时,这些chart应该共享相同的标签。
比如,如果nginx和memcached在chart中一起提供性能优化,且需要在使用该功能时同时存在,则应该有如下的标签部分:
tags:
- webaccelerator
tags:
- webaccelerator
这允许用户使用一个标签打开和关闭该功能。
————————————
仅用于本人学习
来源:Helm | Docs