K8s Helm: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 20: Строка 20:
 
* https://helm.sh/docs/chart_template_guide/function_list/
 
* https://helm.sh/docs/chart_template_guide/function_list/
   
  +
==Передача параметров в именованные темплейты==
==1==
 
  +
* https://runkiss.blogspot.com/2021/06/sending-parameters-to-helm-named.html
  +
  +
  +
Пример именованного темплейта
  +
<PRE>
  +
{{- define "myNamedTemplate" }}
  +
- name: {{ .Values.myParam1 }}
  +
value: {{ .Values.myValue1 | quote }}
  +
- name: {{ .Values.myParam2 }}
  +
value: {{ .Values.myValue2 | quote }}
  +
{{- end }}
  +
</PRE>
  +
  +
  +
  +
===Использование простого словаря (dict)===
  +
  +
{{- $myValues := dict "myParam1" "myValue1" "myParam2" "myValue2" -}}
  +
{{- $myParameters := dict "Values" $myValues -}}
  +
{{- include "myNamedTemplate" $myParameters }}
  +
  +
  +
===Использование словаря c вложениями (dict)===
  +
Тут set делает то что от него ожидается - устанавливает значение по ключу в словаре.<BRE>
  +
$_ нужна для того что бы "выкинуть" то что вернет функция set ( и значение $_ нигде не используется)<BR>
  +
<PRE>
  +
  +
{{- $myValues := dict -}}
  +
{{- $myInnerValues := dict "innerVariable" "innerValue" -}}
  +
{{- $_ := set $myValues "inner" $myInnerValues -}}
  +
{{- $myParameters := dict "Values" $myValues -}}
  +
  +
{{- include "myNamedTemplate" $myParameters }}
  +
</PRE>
  +
  +
===Глобальные переменные===
  +
  +
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 -}}

Версия 13:04, 19 января 2022

Helm

Записки на полях про Helm (3)


Добавить репу

helm repo add bitnami https://charts.bitnami.com/bitnami
helm pull bitnami/kafka


helm install --dry-run --debug  kilda-kafka kafka


Code Snippets

Передача параметров в именованные темплейты


Пример именованного темплейта

{{- 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 делает то что от него ожидается - устанавливает значение по ключу в словаре.<BRE> $_ нужна для того что бы "выкинуть" то что вернет функция 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 Шаблон:- $ := set $myValues "myOverrideParam" "overridenValue" - Шаблон:- $myParameters := dict "Values" $myValues - Шаблон:- include "myNamedTemplate" $myParameters


Перекрытие параметров (вложенных в словарь)

To override just a single global variable, use the following:

Шаблон:- $myValues := .Values Шаблон:- $ := set $myValues "global" .Values.global - Шаблон:- $ := set $myValues.global.OVERRIDE GLOBAL PARAMETER NAME "OVERRIDE GLOBAL PARAMETER VALUE" - Шаблон:- $myParameters := dict "Values" $myValues -