将列表设置为 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 }}
我的 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 }}