如何为掌舵中的子图表引用自定义值文件?

时间:2019-07-14 07:16:42

标签: kubernetes kubernetes-helm kubernetes-deployment

我一直在通过引用helm sub chart documentation来实现头盔子图表。根据文档,它对我有用。这对于默认值文件可以正常工作。但是,当我尝试引用自己的值文件时,这些值不在configmap中。 我的价值文件是values.staging.yaml。

例如:-

mysubchart中的config.yaml

apiVersion: v1
kind: ConfigMap
metadata:
    name: {{ .Release.Name }}-configmap
data:
    salad: {{ .Values.dessert }}
我的子图中的

values.staging.yaml

dessert: banana
我的子图中的

values.yaml

dessert: cake

仅将“ cake”作为值引用。我需要将香蕉作为值。

我尝试了以下命令。

  1. helm install --dry-run --debug mychart --values mychart / charts / mysubchart / values.staging.yaml
  2. helm install --dry-run --debug --name mychart mychart -f mychart / charts / mysubchart / values.staging.yaml
  3. helm install --name mychart mychart -f mychart / charts / mysubchart / values.staging.yaml

在每种情况下,configmap都不会引用values.staging.yaml中的值。

有没有办法做到这一点?

谢谢。!

1 个答案:

答案 0 :(得分:1)

如链接中的Overriding Values of a Child Chart中所述,您需要将子图值包装在与子图名称匹配的键中。

使用helm install -f传递的任何值文件始终在顶层进行解释,即使它实际上位于子图表的目录中也是如此。典型的值文件可能看起来像

mysubchart:
  dessert: banana