将列表设置为 Helm 中的字段

Setting a list to a field in Helm

我的 values.yaml

中有以下内容
router:
  env:
    - name: JSON_LOGGING
      value: True

在我的 Deployment 中,我只想将此列表设置为 env 字段,如下所示:

spec:
  containers:
    # ..
    env: {{ $.Values.router.env }}

但是,这似乎生成了一个不正确的 YAML 文件:

Error: UPGRADE FAILED: YAML parse error on translation/templates/translation-router.yaml: error converting YAML to JSON: yaml: line 35: did not find expected ',' or ']'

有没有办法让它工作?

您需要使用 toYaml 内联部分配置。

spec:
  containers:
    # ..
    env:
      {{- toYaml .Values.rounter.env | nindent 6 }}