J'essaie d'ajouter si grand que la condition dans le graphique Helm. c'est jeter une erreur.
J'ai défini une valeur dans values.yaml et j'utilise cette valeur dans deployment.yaml pour condition.
values.yaml
replicaCount: 2
deployment.yaml
rollingUpdate:
maxSurge: 1
{{ if gt .Values.replicaCount 2}}
maxUnavailable: 0
{{ else }}
maxUnavailable: 1
{{ end }}
J'utilise l'option de marche à sec de la barre pour vérifier le résultat. obtenir une erreur
Error: render error in "hello-world/templates/deployment.yaml": template: hello-world/templates/deployment.yaml:16:12: executing "hello-world/templates/deployment.yaml" at <gt .Values.replicaCo...>: error calling gt: incompatible types for comparison
comment régler ceci ?
Essayez plutôt d'utiliser un nombre flottant en comparaison:
deployment.yaml
rollingUpdate:
maxSurge: 1
{{ if gt .Values.replicaCount 2.0}}
maxUnavailable: 0
{{ else }}
maxUnavailable: 1
{{ end }}
Le casque (avec les modèles Golang sous-jacents et Yaml) peut parfois être étrange.
Notez également que vous devez parfois taper des valeurs dans vos configurations yaml (par exemple, les numéros de port).
Exemple:
...
ports:
- containerPort: !!int {{ .Values.containers.app.port }}
...
En savoir plus sur le casting de type Yaml: https://github.com/yaml/YAML2/wiki/Type-casting