Helm+Crossplane+LinkerD
March 7, 2023
Helm. Функции, пайплайны и условия
Используются для более тонкой настройки переменных в манифестах.
{{ .Values.images | upper | quota }}
{{- if .Values.deptLabel }} labels: dept: {{ .Values.deptLabel }} {{- end }}
{{- if .Values.deptLabel }} labels: dept: {{ .Values.deptLabel }} {{- else if eq.Values.deptLabel "ct" }} labels: dept: camTest {{- end }}
# Если тип сервисного порта указан как NodePort, то указываем его {{- if eq .Values.service.type "NodePort" }} nodePort: {{ .Values.service.nodePort }} {{- end }}
{{- if eq .Values.environment "production" }} ROCKET_SIZE: big {{- else if eq .Values.environment "development" }} ROCKET_SIZE: small {{- else }} ROCKET_SIZE: average {{- end }}
Функции используются для того чтобы определить, создавать в чарте объекты нужного типа или нет.
Например, создавать или не создавать SA.
serviceAccount: create: true name: cameda
{{- if .Values.serviceAccount.create -}} apiVersion: v1 kind: ServiceAccount metadata: name: {{ .Values.serviceAccount.name }} {{- end -}}
Объявление и использование переменной.
{{- $saName := .Values.serviceAccount.name }} metadata: name: {{ $saName }}