我通过谷歌搜索找不到任何东西,Helm 支持私有值吗?
所以我有我的图表和values.yaml
privateProp: hello
publicProp: world
我有一些我想向图表的最终用户公开的值,还有一些我不想要的值,但是这些“私有”值在很多地方都被使用。
例如:publicProps
可被图表用户覆盖,但我想阻止对 privateProp
的访问,但它在许多地方重复使用:
containers:
name: {{.Values.privateProp}}
nodeSelector:
name: {{.Values.privateProp}}
我看到有 {{$privateProp := "hello"}}
,但不清楚如何在文件的其他地方访问它
我怎样才能做到这一点?
答案 0 :(得分:0)
好的,我找到了解决问题的方法。
您可以创建一个名为 _variables.tpl
的文件,名称无所谓
然后声明一个变量:
{{- define "privateProp" -}}
{{- print "hello" -}}
{{- end -}}
然后您可以通过执行以下操作在图表中的任何位置使用它:
spec:
containers:
- name: {{ .Values.dashboard.containers.name }}
image: {{ .Values.dashboard.containers.image.repository }}:{{ .Values.dashboard.containers.image.tag }}
imagePullPolicy: Always
ports:
- containerPort: {{ include "privateProp" . }} # <== This