在 helm 中直接从 values.yaml 设置 ConfigMap 值

Set ConfigMap values directly from values.yaml in helm

我正在尝试直接从 values.yaml in helm

构建 ConfigMap 数据

我的Values.yaml

myconfiguration: |-
key1: >
  { "Project" : "This is config1 test"
  }
key2 : >
  {
    "Project" : "This is config2 test"
  }

和 configMap

apiVersion: v1
kind: ConfigMap
metadata:
  name: poc-secrets-configmap-{{ .Release.Namespace }}
data:
{{.Values.myconfiguration | indent 1}} 

但是在pod上查看数据是空的

Name:         poc-secrets-configmap-xxx
Namespace:    xxx
Labels:       app.kubernetes.io/managed-by=Helm
Annotations:  meta.helm.sh/release-name: poc-secret-xxx
              meta.helm.sh/release-namespace: xxx

Data
====
Events:  <none>

谁能推荐一下

您的 values.yaml 文件中缺少缩进,检查 YAML Multiline

myconfiguration: |-
  key1: >
    { "Project" : "This is config1 test"
    }
  key2 : >
    {
      "Project" : "This is config2 test"
    }

此外,YAML 文件的建议语法是使用 2 个空格进行缩进,因此您可能需要将 configmap 更改为 {{.Values.myconfiguration | indent 2}}