0Pricing
Helm Academy · Урок

Распространённые ошибки отступов YAML

Избегайте ошибок, нарушающих отрендерированный вывод

«Распространённые ошибки отступов YAML» — бесплатный урок Helm Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Helm Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Helm Academy содержит 4 уроков всего.

Отступы задают структуру

В YAML пробелы — не украшение. Только отступы определяют, какой элемент вложен в какой, поэтому даже один лишний или недостающий пробел может изменить весь манифест. 😬

Шаблоны всё усложняют

Когда действие вставляет значение или блок, этот текст оказывается в том столбце, где расположено действие. Ошибитесь — и YAML после рендеринга сломается.

Никогда не используйте табуляцию

YAML категорически запрещает использовать табуляции для отступов. Случайная табуляция вызывает непонятную ошибку разбора, поэтому настройте редактор на вставку пробелов.

Вставка блока

Когда вы добавляете многострочное значение в дерево, оно не выравнивается автоматически. С помощью функции indent необходимо добавить правильное количество пробелов в начале строк.

{{ .Values.config | indent 4 }}

indent задаёт число пробелов

Число после indent — это количество пробелов, добавляемых в начало каждой строки значения. Подберите его в соответствии с уровнем вложенности блока.

Ловушка с новой строкой

Распространённая ошибка: indent не добавляет начальную новую строку, поэтому первая строка приклеивается к ключу YAML. Из-за этого документ может незаметно испортиться.

data:
{{ .Values.config | indent 2 }}

nindent приходит на помощь

В большинстве чартов вместо этого используют nindent. Сначала функция добавляет начальную новую строку, а затем задаёт отступ, поэтому блок аккуратно начинается с отдельной строки.

data: {{ .Values.config | nindent 2 }}

Следите за столбцом действия

Пробелы перед {{ в исходном коде влияют на строку, в которой действие выведет результат. Размещайте управляющие действия на том уровне вложенности, который должен занимать их вывод.

Спискам нужен дефис

Когда значение шаблона становится списком, каждому элементу нужен дефис на правильном уровне отступа. Обычно toYaml вместе с nindent аккуратно делает это за вас.

env:
{{ toYaml .Values.env | nindent 2 }}

Выполните рендеринг и изучите результат

Ошибки отступов незаметны в исходном коде, но очевидны в результате. Выполните рендеринг чарта и быстро просмотрите необработанный YAML, чтобы обнаружить неправильно выровненные блоки. 👀

helm template ./mychart

Пусть helm lint поможет

Запустите helm lint, чтобы обнаружить многие проблемы с YAML и отступами ещё до попытки установить чарт в кластер.

helm lint ./mychart

Быстрая проверка

Вставленный блок продолжает приклеиваться к расположенному выше ключу YAML.

Итоги

Теперь вы умеете избегать классических ловушек: не использовать табуляции, применять nindent для аккуратных блоков и всегда выполнять рендеринг или проверку с помощью lint, чтобы убедиться в корректности YAML. 🎯

Часто задаваемые вопросы

Урок «Распространённые ошибки отступов YAML» бесплатный?

Да — полный текст урока «Распространённые ошибки отступов YAML» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Helm Academy, подпишись на CoddyKit PRO. Курс Helm Academy содержит 4 уроков всего.

Чему я научусь в уроке «Распространённые ошибки отступов YAML»?

Избегайте ошибок, нарушающих отрендерированный вывод Ты практикуешь Helm Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Helm Academy?

Предыдущий опыт не требуется. Helm Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Распространённые ошибки отступов YAML»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Helm Academy?

Да. Каждый урок Helm Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Синтаксис действий с двойными фигурными скобками
  2. Удаление пробелов с помощью тире
  3. Комментарии и кавычки в шаблонах
  4. Распространённые ошибки отступов YAML
← Назад к Helm Academy