Tho*_*ggs 6 yaml kubernetes kubernetes-helm
我想在 Chart.yaml 文件中设置模板值。例如,version: {{ .Values.version }}代替version: 0.1.0
对于其他 yaml 文件,上面的方法也可以。但是,据我了解,Helm 对 Chart.yaml 的处理方式有所不同,并且Chart.yaml 文件不是通过模板引擎运行的。
有人知道解决方法吗?
version: 0.1.0如果我尝试对此进行 helm lint (作为 value.yaml 文件中的条目),
我得到的实际错误是:error converting YAML to JSON: yaml: invalid map key: map[interface {}]interface {}{".Values.version":interface {}(nil)}
您正在向后思考问题:在模板中使用它的任何地方指定版本Chart.yaml并派生版本;您不能在 中拥有动态版本,Chart.yaml因为helm repo index .不接受--set或任何此类标志,因此无法构建要上传的 tgz
因此,给定一个Chart.yaml:
apiVersion: v1
name: my-awesome-chart
appVersion: 0.1.0
version: 1.2.3
Run Code Online (Sandbox Code Playgroud)
和一个Deployment.yaml模板:
{{ $myTag := .Chart.Version }}
{{/* or, you can use .Chart.AppVersion */}}
apiVersion: apps/v1
kind: Deployment
spec:
template:
spec:
containers:
- image: docker.example.com:{{ $myTag }}
# produces: docker.example.com:1.2.3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1532 次 |
| 最近记录: |