Комментарии 13
Лучше было бы оформлять код не в виде картнок, а то размер шрифта получился разный.
С большой радостью ушел с хельма на кастомайз. Не без недостатков, но терпеть эту убогую шаблонизацию и бесконечный поток обращений с ошибкой "Error. UPGRADE FAILED" не было сил.
Go templates очень мощный и гибкий инструмент если умеешь им пользоваться. Этому собственно и посвещена статья. В ошибках апгрейда хелм как правило не виноват. Там либо чарт кривой(иммутабельные поля правятся например), либо выкат (включен трекинг и выкат сфэйлился по таймауту). Про отладку чартов в следубщей части.

Хорошо, что есть разные инструменты. Но игнорировать Helm невозможно.
даже в простых примерах не стоит использовать пароли из values.yaml. В прод все равно пойдет
envFrom:
- secretRef:
name: {{ .Values.secretName }}
Не обязательно. Всё зависит от того как в данном конкретном случае организована работа с секретами. Они могут передаваться из защищенного хранилища ci системы через директиву set или лежать в зашифрованном виде в values в репозитории.
... и будет светится открытым текстом в yaml Deployment'а
А в yaml чего он должен светиться?
Helm поместит значение в явном виде; имея доступ к просмотру yaml Deployment'ов - все пароли на виду.
Нужно отделять мух от котлет, а секьюрность от деплоя. Программист может не иметь доступа к cd системе и кластеру и не видеть ни её защищённое хранилище, ни нутрянку кластера, и при этом легко вытащить пароли, потомучто в контейнерах крутится его код и выложить содержимое переменных окружения на отдельный локейшен например - как два байта п. Совет "не используйте пароли из вэльюс" в общем случае очень наивный.
Погружение в Helm Package Manager. Часть первая