K8s Helm
Материал из noname.com.ua
Версия от 10:51, 2 февраля 2022; Sirmax (обсуждение | вклад) (→Передача параметров в именованные темплейты)
Helm
Записки на полях про Helm
Добавить репу
helm repo add bitnami https://charts.bitnami.com/bitnami
helm pull bitnami/kafka
helm install --dry-run --debug kilda-kafka kafka
Code Snippets
Передача параметров в именованные темплейты
- https://runkiss.blogspot.com/2021/06/sending-parameters-to-helm-named.html
- https://habr.com/ru/company/flant/blog/529158/
Пример именованного темплейта
{{- define "myNamedTemplate" }} - name: {{ .Values.myParam1 }} value: {{ .Values.myValue1 | quote }} - name: {{ .Values.myParam2 }} value: {{ .Values.myValue2 | quote }} {{- end }}
Использование простого словаря (dict)
{{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Использование словаря c вложениями (dict)
Тут set делает то что от него ожидается - устанавливает значение по ключу в словаре.
$_ нужна для того что бы "выкинуть" то что вернет функция set ( и значение $_ нигде не используется)
{{- $myValues := dict -}} {{- $myInnerValues := dict "innerVariable" "innerValue" -}} {{- $_ := set $myValues "inner" $myInnerValues -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Глобальные переменные
If case the named template uses a .Values.global.VARIABLE , add the global dictionary as well:
{{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}} {{- $_ := set $myValues "global" .Values.global -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Перекрытие параметров
To override existing parameters, only for a specific activation, use the following:
{{- $myValues := .Values | deepCopy -}} {{- $_ := set $myValues "myOverrideParam" "overridenValue" -}} {{- $myParameters := dict "Values" $myValues -}} {{- include "myNamedTemplate" $myParameters }}
Перекрытие параметров (вложенных в словарь)
To override just a single global variable, use the following:
{{- $myValues := .Values | deepCopy -}} {{- $_ := set $myValues "global" .Values.global -}} {{- $_ := set $myValues.global.OVERRIDE_GLOBAL_PARAMETER_NAME "OVERRIDE_GLOBAL_PARAMETER_VALUE" -}} {{- $myParameters := dict "Values" $myValues -}}