Если вы пытаетесь встроить многострочную строку в артефакт Kubernetes на диаграмме Хелма, самый простой рецепт -
- Использование блочной скалярной формы YAML
|
для сохранения новых строк; - Запустить макрос Go template
{{ ... }}
в первом столбце; и - Используйте функцию sprig
indent
для отступа каждой строки блока, включая первую.
(Вы часто будете видеть |-
которая завершает последний перевод строки; для этого я могу представить, что хочу сохранить последний перевод строки |+
или просто |
; разница между этими двумя последними заключается в том, сохраняются ли дополнительные пустые строки в конце или нет.)
containers:
env:
- name: MY_PRIVATE_KEY
value: |+
{{ .Values.fpm.dot_env.MY_PRIVATE_KEY | indent 12 }}
(Обычно для реальных секретов рекомендуется хранить их в секретных объектах Kubernetes. Эти значения кодируются в base64 в API-интерфейсе Kubernetes, поэтому, когда вы объявляете секретный объект в Helm, вы будете использовать ... | b64enc
вместо это indent
рецепт.)