Кодирование с b64enc, toYaml и indent
Сериализуйте структуры в корректные манифесты
«Кодирование с b64enc, toYaml и indent» — бесплатный урок Helm Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Helm Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Helm Academy содержит 4 уроков всего.
Сериализация структурированных значений
Иногда значение представляет собой целый объект, а не строку. Такие помощники, как toYaml, превращают структуры в корректные фрагменты манифеста.
Рендеринг отображений с помощью toYaml
Функция toYaml преобразует отображение или список из ваших значений в правильно отформатированный текст YAML.
{{ toYaml .Values.resources }}Отступы имеют решающее значение
Необработанный результат toYaml начинается с нулевой колонки. При вставке во вложенный YAML это нарушает документ, поэтому результату необходимо задать отступ.
Смещение блоков с помощью indent
Функция indent добавляет пробелы в начало каждой строки блока, выравнивая сериализованный результат относительно родительского ключа.
{{ toYaml .Values.resources | indent 4 }}Учитывающий перевод строки nindent
Помощник nindent добавляет начальный перевод строки перед установкой отступа, поэтому после ключа блок аккуратно располагается на отдельных строках.
resources: {{ toYaml .Values.resources | nindent 4 }}indent и nindent
Используйте nindent сразу после ключа на той же строке, а indent — когда блок уже начинается с новой строки.
Base64 с помощью b64enc
Секреты Kubernetes хранят данные в кодировке Base64. Помощник b64enc кодирует значение в открытом виде в этот формат. 🔐
password: {{ .Values.password | b64enc }}Декодирование с помощью b64dec
Обратный помощник, b64dec, декодирует Base64 обратно в открытый текст; это удобно при чтении уже закодированного значения.
{{ .Values.encoded | b64dec }}Кодирование — не шифрование
Помните, что b64enc только кодирует данные, но никогда не защищает их. Любой может выполнить обратное декодирование, поэтому это не замена полноценному управлению секретами.
Сначала заключайте строки в кавычки, затем кодируйте
Для значений Secret часто сначала используйте quote, чтобы строки, похожие на числа, сохранились как строки, а затем кодируйте результат с помощью b64enc.
token: {{ .Values.token | quote | b64enc }}Объединение всех элементов
Типичный блок объединяет эти возможности: сериализует данные с помощью toYaml, а затем применяет к ним nindent под нужным ключом, создавая аккуратный корректный результат.
nodeSelector: {{ toYaml .Values.nodeSelector | nindent 8 }}Быстрая проверка
Какой помощник одновременно добавляет начальный перевод строки и устанавливает отступ для блока?
Повторение
Вы узнали, что toYaml сериализует данные, indent и nindent выравнивают их, а b64enc кодирует данные Secret. 🎉
Часто задаваемые вопросы
Урок «Кодирование с b64enc, toYaml и indent» бесплатный?
Да — полный текст урока «Кодирование с b64enc, toYaml и indent» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Helm Academy, подпишись на CoddyKit PRO. Курс Helm Academy содержит 4 уроков всего.
Чему я научусь в уроке «Кодирование с b64enc, toYaml и indent»?
Сериализуйте структуры в корректные манифесты Ты практикуешь Helm Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Helm Academy?
Предыдущий опыт не требуется. Helm Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Кодирование с b64enc, toYaml и indent»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Helm Academy?
Да. Каждый урок Helm Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Передача значений через функции
- default, required и quote
- Помощники строк из библиотеки Sprig
- Кодирование с b64enc, toYaml и indent