【发布时间】:2021-06-09 00:59:31
【问题描述】:
我正在尝试在掌舵图中使用 if/else-if/else 循环。基本上,我想根据 if/else 条件在 configfile 中添加 ENV 配置。下面是逻辑:
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Values.applicationName }}-configmap
labels:
projectName: {{ .Values.applicationName }}
environment: {{ .Values.environment }}
type: configmap
data:
{{- if eq .Values.environment "production" }}
{{ .Files.Get "config-prod.yaml" | nindent 2}}
{{- else if eq .Values.environment "development" }}
{{ .Files.Get "config-dev.yaml" | nindent 2}}
{{- else }}
{{ .Files.Get "config-stage.yaml" | nindent 2}}
{{- end }}
但是我没有得到想要的输出并且面临一些问题。有人可以帮我解决这个问题吗?
Edit1:我根据建议添加了我修改后的 configmap.yaml,helm install/template 命令给出了Error: YAML parse error on demo2/templates/configmap.yaml: error converting YAML to JSON: yaml: line 14: did not find expected key error。
我的 config-prod 和 config-stage 也在被渲染(根据条件,如果我给 environment: production 然后 config-prod.yaml 被添加,如果我给 environment: stage/null 然后 config-stage.yaml已添加。
【问题讨论】:
标签: kubernetes kubernetes-helm