Je fais ça maintenant:
value: {{ required "A valid .Values.foo entry required!" .Values.foo }}
Mais donner ce même message pour toutes les valeurs requises dans les modèles est lourd et encombre les modèles à mon avis.
Y a-t-il une meilleure façon de le définir en dehors du modèle\ou une manière plus propre de le faire dans le modèle lui-même?
Pour exposer le nom de l'élément manquant au texte requis, vous pouvez faire quelque chose comme ceci:
{{- range $field, $my_key := $data }}
{{- if hasKey $dic1 $my_key }}
{{ $field }}: {{ index $dic1 $my_key | b64enc}}
{{- else if hasKey $dic2 $my_key }}
{{ $field }}: {{ index $dic2 $my_key | b64enc}}
{{- else }}
{{ $field }}: {{ required (printf "key %s is missing" $my_key) nil }}
{{- end }}
{{- end }}
Vous pouvez utiliser lint de barre avec - strict drapeau pour vérifier les valeurs non définies
$ helm lint --strict .
==> Linting .
[INFO] Chart.yaml: icon is recommended
[ERROR] templates/: render error in "mychart/templates/service.yaml": template: mychart/templates/service.yaml:10:19: executing "mychart/templates/service.yaml" at <.Values.foo>: map has no entry for key "foo"
Error: 1 chart(s) linted, 1 chart(s) failed