kubernetes-helm - 仅当映射中存在条目时才在 helm 模板中创建条目

标签 kubernetes-helm go-templates

假设此 map 存在于我的 values.yaml

something:
   somethingElse:
       variable1: value1
       variable2: value2
       variable3: value3

我想为 kubernetes Secret 资源创建一个 helm 模板(尽管这不是最重要的)当且仅当说出键值对 variable2: value2 存在。 (我实际上只想匹配 variable2 的存在,而不是 value2 的值是什么)

我知道如何范围以包含所有条目

{{- range $name, $value := .Values.something.somethingElse }}
{{indent 4 $name }}: {{ $value }}
{{- end }}

但在伪代码中,我想要的是

if variable2 in .Values.something.somethingElse

variable2: value2

使用 helm 模板语言这是否可行?

最佳答案

你可以这样做:

{{if (index .Values.something.somethingElse "variable2")}}

关于kubernetes-helm - 仅当映射中存在条目时才在 helm 模板中创建条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68654309/

相关文章:

kubernetes - Helm 插值

kubernetes-helm - Helm 从多个配置 YAML 文件构建动态 configmap

kubernetes - 如何使用 Helm 将覆盖文件传递到特定服务 YAML 文件?

kubernetes - 如何编辑 Helm chart 的配置?

go - 范围内的转义模板

kubernetes - 使用 Helm 创建 ConfigMap 时如何指定 .Files.Get 的自定义路径

Golang 模板无法访问 embedFS 中的文件

go - 重新定义 Go 模板 : sometimes works, 有时会失败

go - 动态解析文件

golang renderer.HTML 没有从模板内部选择 javascript 文件