在用于部署应用程序的模板中,我具有以下内容:
{{- if .Values.application.rbac.enabled -}}
serviceAccountName: service-account-cache
{{- else -}}
{{- end -}}
关键是这种文件是动态使用的,我的意思是,我有几个使用此类文件的微服务,但是当我使用时,算法是这样的:
helm upgrade --install ${releaseName} -f ../folder/secrets/${env.appId}.yaml
取决于微服务程序,它还会添加不同的-f yaml文件。其中一些有
application:
rbac:
enabled: true
但另一个没有。
在那些没有此类附加属性的人中,出现以下错误:
<.Values.application.rbac.enabled>: nil pointer evaluating interface {}.enabled
因为没有定义Values.application.rbac。
我该如何做,以便如果未定义它,则不要执行if但没有nil指针发生?
预先感谢