掌舵-默认情况下使用全局值

时间:2019-12-09 13:40:44

标签: kubernetes-helm

我是Helm的新手。

我在父图表中有一个默认值。我想默认在每个子图中使用此值,但也可以覆盖特定子图的值。

示例:

# Parent-chart values.yaml

global:
  schedule: 10m

默认情况下,所有子图都将使用此值。但是,如果我运行以下命令:

helm install --set subchart-A.schedule="20m"

子图表A将使用值“ 20m”。

我正在考虑两种可能性:

  1. 也许我可以通过某种方式将子图表值链接到全局值:
# Subchart values.yaml

schedule: {{ .Values.global.schedule }} # it doesn't work

在这种情况下,有可能为单个子图表覆盖一个特定的值。

  1. 也许我可以写一个函数
# Pseudocode:

if subchart.schedule is null
  printf global.schedule
else
  printf subchart.schedule

您会做什么,通常可以做什么?

1 个答案:

答案 0 :(得分:1)

这里是documentation供参考。

您可以指定默认值!

文档示例:

{{- with .Values.favorite }}
drink: {{ .drink | default "tea" | quote }}
food: {{ .food | upper | quote }}
release: {{ .Release.Name }}
{{- end }}

在您的情况下,它将类似于:

{{ subchart-A.schedule | default .Values.global.schedule }}
相关问题