default, required и quote
Задавайте значения по умолчанию и требуйте обязательный ввод
«default, required и quote» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Три повседневные функции
В каждом почти чарте встречаются три функции: default для резервных значений, required для обязательных значений и quote для безопасных строк.
Заполнение пропусков с помощью default
Функция default подставляет резервное значение, если значение пусто или отсутствует, поэтому шаблон никогда не выводит пустой результат.
{{ .Values.replicas | default 1 }}Порядок аргументов default
В виде функции резервное значение указывается первым, а исходное значение — вторым. В канале исходное значение приходит последним, поэтому запись читается естественно.
{{ default "nginx" .Values.image }}Что считается пустым значением
Для функции default пустыми считаются 0, пустая строка, пустой список или nil. Любое из этих значений активирует резервное значение.
Проверка входных значений с помощью required
Функция required прекращает рендеринг и выводит ваше сообщение, если значение отсутствует, превращая незаметные ошибки в понятные. ⛔
{{ required "image is required" .Values.image }}required возвращает значение
Если значение присутствует, функция required просто возвращает его, поэтому её можно вставлять в любое место, где требуется обязательное поле.
host: {{ required "host is required" .Values.host }}Пишите полезные сообщения об ошибках
Хорошее сообщение функции required называет отсутствующий ключ и объясняет, как его задать, чтобы пользователи могли исправить проблему без чтения чарта.
Безопасные строки с помощью quote
Функция quote заключает значение в двойные кавычки, защищая YAML от значений, похожих на числа, логические значения или null.
version: {{ .Values.version | quote }}Почему важны кавычки
Без функции quote значение вроде yes или 1.20 может быть разобрано как логическое значение или число. Кавычки сохраняют его предсказуемой строкой.
Объединение трёх функций
Эти функции сочетаются в одном конвейере: сначала подставьте резервное значение, затем заключите результат в кавычки — всё в одной понятной строке.
tag: {{ .Values.tag | default "latest" | quote }}Как выбрать подходящую функцию
Используйте default, когда значение необязательно, а required — когда оно обязательно. Применяйте quote всякий раз, когда строка должна остаться строкой.
Быстрая проверка
Какая функция прекращает рендеринг, если значение отсутствует?
Повторение
Вы познакомились с default для резервных значений, required для обязательных входных данных и quote для безопасных строк. Вместе они делают значения надёжными. 🎉
Часто задаваемые вопросы
Урок «default, required и quote» бесплатный?
Да — полный текст урока «default, required и quote» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «default, required и quote»?
Задавайте значения по умолчанию и требуйте обязательный ввод Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «default, required и quote»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Передача значений через функции
- default, required и quote
- Помощники строк из библиотеки Sprig
- Кодирование с b64enc, toYaml и indent