我正在使用 Go 模板来管理 Helm 的部署。
我有这样的values.yaml 文件:
env: dev
config:
dev:
myname: Hi
live:
myname: Bye
现在我想根据环境(开发、实时)获取值。
喜欢:
{{ .Values.config. {{.Values.env}} }}
不幸的是,这种方法行不通,因为它说:
bad character U+007B '{'
有什么办法可以利用其他值来获取该值吗?
问题来自于嵌套模板,这不是 Go 模板的工作方式。
解决方案取决于数据的内部表示。如果表示为嵌套映射,解决方案是使用 pipeline 全局函数index
.
{{ index .Values.config .Values.env `myname` }}
更多信息关于管道 https://golang.org/pkg/text/template/#hdr-Pipelines.
更多信息关于全局模板函数 https://golang.org/pkg/text/template/#hdr-Functions.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)