Диаграмма Kubernetes Helm: используйте _helpers.tpl для объединения значений и обратной связи с Values.yaml - PullRequest
0 голосов
/ 09 октября 2019

Я новичок в Кубернетесе, Хелме и Голанге. По сути, я пытаюсь объединить строки в моем файле values.yaml, чтобы заполнить другое значение в моем файле values.yaml. Я использую _helpers.tpl для этого (в попытке лучше понять Хелма и Голанга). Я мог бы просто написать «users:» datafeed: password ::: входящий »в моем файле values.yaml и покончить с этим;но хотел бы избежать этого.

В моем файле values.yaml есть следующее:

sftp:
  users: ""
  username: "datafeed"
  password: "password"
  incoming: "incoming"

И я хочу, чтобы файл final values.yaml читал:

sftp:
  users: "datafeed:password:::incoming"
  username: "datafeed"
  password: "password"
  incoming: "incoming"

Для этого я пытаюсь отредактировать файл _helpers.tpl. Я попытался

{{- define "sftp.users" -}}
{{- .Values.sftp.users: .Values.sftp.username+":"+.Values.sftp.password+":::"+.Values.sftp.incoming -}}
{{- end -}}

и

{{- define "sftp.users" -}}
{{- .Values.sftp.users:= .Values.sftp.username+":"+.Values.sftp.password+":::"+.Values.sftp.incoming -}}
{{- end -}}

Затем я попытался сделать каждый сегмент переменной (и удалил явные значения в файле values.yaml):

{{- define "sftp.users" -}}
{{ $username:= "datafeed" }}
{{ $password:= "password" }}
{{ $incoming:= "incoming" }}
{{- .Values.sftp.users= {{$username}}+":"+{{$password}}":::"+{{$incoming}} -}}

и затем установка полей / ключей в явном виде:

username: {{ .Values.sftp.username | default "datafeed" }}
password: {{ .Values.sftp.password | default "password" }}
incoming: {{ .Values.sftp.incoming | default "incoming" }}
{{- .Values.sftp.users:= username+":"+password+":::"+incoming -}}

и:

{{define "username"}}datafeed{{end}}
{{define "password"}}password{{end}}
{{define "incoming"}}incoming{{end}}
{{define "users"}}{{template "username"}}:{{template "password"}}:::{{template "incoming"}}{{end}}
{{- printf "users" -}}
{{- .Values.sftp.users: users -}}

Я также посмотрел предыдущие сообщения: Helm _helpers.tpl: Вызов определеншаблоны в других определениях шаблонов Kubernetes Helm, объедините две переменные со строкой в ​​середине Как получить значения из values.yaml в _helpers.tpl в диаграммах рулевого управления

Кажется, ничего из этого не работает. Я не могу сказать, мой ли это подход или мой синтаксис. Вероятно, оба.

...