secret-manager ({{ .Chart.Version }}) をデプロイしました。

{{- if .Values.distribution.reflector.enabled }}

配布方式 : kubernetes-reflector による自動同期
  ソース  : ネームスペース "{{ .Release.Namespace }}"
  同期先  : /{{ .Values.distribution.reflector.namespaceRegex }}/ に一致する全ネームスペース
{{- else }}
{{- $nsList := splitList "," (include "secret-manager.distributionNamespaces" .) }}

配布方式 : Helm による複製（{{ len $nsList }} ネームスペース）
  {{- range $nsList }}
  - {{ . }}
  {{- end }}
{{- end }}
{{- if .Values.distribution.reloader.enabled }}
Reloader : 有効（参照側 Deployment に reloader.stakater.com/auto: "true" を付けると自動再起動）
{{- end }}

生成された Secret（プレフィックス "{{ .Values.common.namePrefix }}"）:
{{- $prefix := .Values.common.namePrefix }}
{{- range $name, $p := .Values.mail.providers }}{{- if $p.enabled }}
  [mail] {{ $prefix }}{{ $name }}   キー: SMTP_HOST/PORT/USERNAME/PASSWORD/FROM ほか, smtp.env{{ if $p.renderMsmtprc }}, msmtprc{{ end }}
{{- end }}{{- end }}
{{- range $name, $c := .Values.api.credentials }}{{- if $c.enabled }}
  [api]  {{ $prefix }}{{ $name }}   キー: {{ keys $c.data | sortAlpha | join ", " }}
{{- end }}{{- end }}
{{- range $name, $g := .Values.generic.secrets }}{{- if $g.enabled }}
  [gen]  {{ $prefix }}{{ $name }}   type: {{ $g.type | default "Opaque" }}
{{- end }}{{- end }}

参照側の Deployment からの使い方:

  # まとめて環境変数に注入
  envFrom:
    - secretRef:
        name: {{ .Values.common.namePrefix }}<エントリ名>

  # 個別キーを参照
  env:
    - name: SMTP_PASSWORD
      valueFrom:
        secretKeyRef:
          name: {{ .Values.common.namePrefix }}gmail
          key: SMTP_PASSWORD

値を変更したいときは values を更新して `helm upgrade` するだけで全ネームスペースに反映されます。
