Как использовать запечатанные секреты kubernetes с шаблонами helm

#kubernetes #kubernetes-helm #kubernetes-secrets

Вопрос:

Я только что наткнулся на инструмент «Запечатанные секреты» https://github.com/bitnami-labs/sealed-secrets для шифрования секретов в kubernetes с дополнительными преимуществами, связанными с возможностью их передачи в git

Я немного разочарован тем, что такой отличный инструмент не рассматривал шаблоны helm по умолчанию или как часть официальной документации. Я имею в виду, что для такого инструмента, как этот, я не уверен, думали ли разработчики о разных способах использования людьми секретов, в которых диаграммы руля-отличный способ, когда мы используем файлы шаблонов значений для разных сред.

В любом случае, вот моя настройка

секреты.ямл

 ---
apiVersion: v1
kind: Secret
metadata:
  name: demo-app
type: Opaque
data:
  ENV1: "{{ .Values.ENV1 | b64enc }}"
  ENV2: "{{ .Values.ENV2 | b64enc }}"
  ENV3: "{{ .Values.ENV3 | b64enc }}"
 

вот, например, файлы шаблонов значений для DEV и PROD

ценности-dev.yaml

 demo-app:
  name: demo-app
  replicaCount: 1
  image:
    repository: example/demo-app
    tag: latest
    pullPolicy: Always


# secrets
ENV1: 'dev_4rlmerl4om3o'
ENV2: 'dev_eom4om4odl4o'
ENV3: 'dev_38hdineoij4oj3onod4ncen3eiixnknnkejnslrmnomntrcoenkc'
 

ценности-prod.yaml

 demo-app:
  name: demo-app
  replicaCount: 1
  image:
    repository: example/demo-app
    tag: 1.0.0
    pullPolicy: Always


# secrets
ENV1: 'prod_4rlmerl4om3o'
ENV2: 'prod_eom4om4odl4o'
ENV3: 'prod_38hdineoij4oj3onod4ncen3eiixnknnkejnslrmnomntrcoenkc'
 

Вот как я развертываю приложение

разработка

 helm upgrade --install demo-app-dev --namespace team1 -f values-dev.yaml .
 

подгонять

 helm upgrade --install demo-app-prod --namespace team1 -f values-prod.yaml .
 

Я пытаюсь использовать запечатанные секреты в этом сценарии, но не могу понять, как это сделать, не изменив полностью всю мою структуру.

Комментарии:

1. никто не может помочь?