[英]Convert a string to Yaml in Helm
我有一个用于部署 spring 服务的舵图,该服务在 YAML 文件中有配置文件。 目前,我的舵图使用以下代码:
模板/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: account-service-config
data:
variable.yml:
{{ range $key, $value := .Values.spring.config.content | indent 4 }}
{{ $key | indent 2}}={{ $value }}
{{printf "\n" }}
{{- end -}}
我有一个values.yaml如下
spring:
config:
content: |-
spring:
application:
name: hello
security:
abc:
abc-def: ${url}
问题是,如果我想更改应用程序名称的任何值,我必须像这样重写整个配置:
spring:
config:
content: |-
spring:
application:
name: valuechange
security:
abc:
abc-def: ${url}
所以我的问题是,有没有办法在 Helm 模板中将字符串转换为 Yaml。 我希望将其转换为 helm yaml 并通过部署文件中的配置映射注入它。
helm 模板对于许多服务都很常见,因此我无法明确定义值,因为它们对于每个服务都不同,并且我将 values.yaml 覆盖为另一个名为 values.yaml 的文件,位于相应的 Z2A2D595E6ED9A0B24D6ZB7F2 服务存储库中。
您可以像这样使用名为toYaml
的 function:
variable.yml: |-
{{ toYaml .Values.spring.config.content | indent 4 }}
我们在 Hazelcast Helm Chart 中使用了类似的东西。 请在此处查看详细信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.