gpt4 book ai didi

json - 如何将整个 JSON 字符串传递给 Helm 图表值?

转载 作者:行者123 更新时间:2023-12-04 18:00:52 25 4
gpt4 key购买 nike

如何将整个 JSON 字符串传递给 Helm 图表值?

我有 values.yml其中 config 值应包含带有应用程序配置的整个 JSON

...
config: some JSON here
...

我需要将此值传递给一个 secret 模板,然后将其作为卷挂载到 Kubernetes pod。
{{- $env := default "integration" .Values.env}}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-{{ $env }}
type: Opaque
data:
config.json: {{ .Values.config | b64enc | quote }}

然而,传递单引号字符串的明显方法,如 '{"redis": "localhost:6379"}'失败是因为 Helm 出于某种原因删除了字符串中的所有双引号(即使我对它们进行了转义),所以我最终得到了 {redis: localhost:6379}这不是有效的 JSON。

是否有任何其他可能性如何在不加载模板文件的情况下一次性将配置传递给 pod tpl功能并通过 values.yml 访问所有需要的字段分别地?

最佳答案

.Values.config包含 json 然后你可以在你的模板化 secret 中使用它

{{ .Values.config | toJson | b64enc | quote }}
使用 toJson 似乎很奇怪将 JSON 转换为 JSON 但 helm 在您告诉它之前不会 native 将其视为 JSON。请参阅 SO 问题 How do I use json variables in a yaml file (Helm)举个例子。

关于json - 如何将整个 JSON 字符串传递给 Helm 图表值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54038837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com