将字符串转换为YAML映射

时间:2020-07-10 08:47:32

标签: kubernetes-helm go-templates

在values.yaml中,我还有另一个yaml配置编码为base64。在模板中,我使用

对其进行解码
response

并且我需要像映射一样访问它,所以需要的是一种类似于AsConfig的文件,只是用于字符串。

1 个答案:

答案 0 :(得分:0)

您可以使用Helm的fromYaml函数(除了this commit之外没有找到任何文档)

config.yaml ,其编码为cat config.yaml | base64

xxx: yyy
zzz: qqq

values.yaml

config: eHh4OiB5eXkKenp6OiBxcXEK

secret.yaml

{{ $config :=  (b64dec .Values.config) | fromYaml  }}
apiVersion: v1
kind: Secret
metadata:
  name: secret
type: Opaque
data:
  test: {{  $config.xxx }}

头盔模板

/mnt/c/home/chart> helm template .
---
# Source: chart/templates/secret.yaml
apiVersion: v1
kind: Secret
metadata:
  name: secret
type: Opaque
data:
  test: yyy