Helm 模板检查布尔值
Helm Template check boolean value
我正在尝试检查某个值是否为真,但对于我尝试的每个变体,始终显示以下错误:
_helpers.tpl:96:19: executing "mongo_databasename" at <.Values.mongo.enabled>: can't evaluate field Values in type string
我的 _helpers.tpl 文件的一部分:
{{/*
Get mongodb connection string
*/}}
{{- define "mongo_databasename" -}}
{{- if eq (.Values.mongo.enabled | toString) "true" }}
{{- .Values.mongo.databaseName }}
{{- else }}
{{- .Values.environmentVars.mongo.databaseName }}
{{- end -}}
{{- end -}}
我的 values.yaml 文件的相应部分:
mongo:
enabled:
username: user
我试过很多方法来检查 if 条件,比如上面的那个:
{{- if .Values.mongo.enabled }}
可能是include作用域造成的
模板看起来不错。
我试过如下
_helper.tpl
{{/*
Get mongodb connection string
*/}}
{{- define "mongo_databasename" -}}
{{- if .Values.mongo.enabled }}
{{- .Values.mongo.databaseName }}
{{- else }}
{{- .Values.environmentVars.mongo.databaseName }}
{{- end -}}
{{- end -}}
values.yaml
mongo:
enabled:
username: user
databaseName: test
environmentVars:
mongo:
databaseName: envvar
templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "test.fullname" . }}
data:
test: {{- include "mongo_databasename" .}}
test2:
{{- with .Values.mongo }}
{{- include "mongo_databasename" $ }}
{{- end }}
输出
apiVersion: v1
kind: ConfigMap
metadata:
name: test-v7
data:
test:envvar
test2:envvar
注意在templates/configmap.yaml include
语句末尾传入的作用域(. | $
)。
我正在尝试检查某个值是否为真,但对于我尝试的每个变体,始终显示以下错误:
_helpers.tpl:96:19: executing "mongo_databasename" at <.Values.mongo.enabled>: can't evaluate field Values in type string
我的 _helpers.tpl 文件的一部分:
{{/*
Get mongodb connection string
*/}}
{{- define "mongo_databasename" -}}
{{- if eq (.Values.mongo.enabled | toString) "true" }}
{{- .Values.mongo.databaseName }}
{{- else }}
{{- .Values.environmentVars.mongo.databaseName }}
{{- end -}}
{{- end -}}
我的 values.yaml 文件的相应部分:
mongo:
enabled:
username: user
我试过很多方法来检查 if 条件,比如上面的那个:
{{- if .Values.mongo.enabled }}
可能是include作用域造成的
模板看起来不错。
我试过如下
_helper.tpl
{{/*
Get mongodb connection string
*/}}
{{- define "mongo_databasename" -}}
{{- if .Values.mongo.enabled }}
{{- .Values.mongo.databaseName }}
{{- else }}
{{- .Values.environmentVars.mongo.databaseName }}
{{- end -}}
{{- end -}}
values.yaml
mongo:
enabled:
username: user
databaseName: test
environmentVars:
mongo:
databaseName: envvar
templates/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "test.fullname" . }}
data:
test: {{- include "mongo_databasename" .}}
test2:
{{- with .Values.mongo }}
{{- include "mongo_databasename" $ }}
{{- end }}
输出
apiVersion: v1
kind: ConfigMap
metadata:
name: test-v7
data:
test:envvar
test2:envvar
注意在templates/configmap.yaml include
语句末尾传入的作用域(. | $
)。