Kubernetes 在舵图中作为yaml键的变量值
我想通过在helm命令行中设置一个变量,从values.yaml中选择config节 values.yaml的示例部分:Kubernetes 在舵图中作为yaml键的变量值,kubernetes,kubernetes-helm,go-templates,Kubernetes,Kubernetes Helm,Go Templates,我想通过在helm命令行中设置一个变量,从values.yaml中选择config节 values.yaml的示例部分: aaa: x1: "az1" x2: "az2" bbb: x1: "bz1" x2: "bz2" configmap.yaml的示例部分 data: {{ .Values.outsideVal.x1 }} 预期结果应该是这样的 data: az1 测试舵输出 helm template --set outsideVal=aaa
aaa:
x1: "az1"
x2: "az2"
bbb:
x1: "bz1"
x2: "bz2"
configmap.yaml的示例部分
data:
{{ .Values.outsideVal.x1 }}
预期结果应该是这样的
data:
az1
测试舵输出
helm template --set outsideVal=aaa mychart
我犯了这个错误
Error: render error in "./templates/configmap.yaml": template: ./templates/configmap.yaml:21:12: executing "./templates/configmap.yaml" at <.Values.outsideVal.x...>: can't evaluate field x1 in type interface {}
错误:在“/templates/configmap.yaml”中呈现错误:模板:./templates/configmap.yaml:21:12:在执行“/templates/configmap.yaml”时:无法计算类型接口{}中的字段x1
所以问题是如何获得预期的结果?我怀疑您正在寻找
index
函数,它可以通过变量键在映射中查找值
{{ (index .Values .Values.outsideVal).x1 }}