Helm Charts-如何在未定义的对象属性值上使用`default`?

问题描述 投票:0回答:1

[使用Helm,如果没有定义变量,我的印象是default将是备用。但是,Helm似乎无法获得子对象散列中的值:

  type: {{ default "NodePort" .Values.fpm.service.type }}

如果未定义.Values.fpm.serviceservice.type,则应使用9000。

但是,尝试对此进行模板化会引发nil指针错误:

 <.Values.fpm.service.type>: nil pointer evaluating interface {}.type

是否有一种方法可以简单地执行此级别的变量测试?还是我要接受if / else测试?

此操作的目的是可选.fpm.service文件中定义[..].type(和values.yaml)。

((我正在构建Helm库图表以处理主图表的可选定义)

kubernetes-helm
1个回答
0
投票

根据official Helm doc (Using Default Function),语法不同,应该以这种方式使用它:

type: {{ .Values.fpm.service.type | default "NodePort" | quote }}
© www.soinside.com 2019 - 2024. All rights reserved.