我试图将字典从一个舵模板传递到另一个模板,但它在被调用的模板中解析为 null。
调用模板-deployment.yaml
调用模板-storageNodeAffinity
我看到 myDict 在 deployment.yaml 中打印为地图,但在 storageNodeAffinity 中打印为 null。
最终我需要从值文件传递nodeAffn。
部署.yaml
{{- $myDict := dict "cpu" "amd" }}
{{- include "storageNodeAffinity" $myDict | indent 6 }}
{{printf "%q" $myDict}}
Run Code Online (Sandbox Code Playgroud)
存储亲和力.tpl
{{- define "storageNodeAffinity" }}
{{/* {{- $myDict := dict "cpu" "amd" }}*/}}
{{printf "%q" .myDict}}
{{- range $key, $val := .myDict }}
- key: {{ $key }}
operator: In
values:
- {{ $val }}
{{- end }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)
值.yaml
nodeAffn:
disktype: "ssd"
cpu: intel
Run Code Online (Sandbox Code Playgroud)