Что это такое
YAML популярен в конфигурационных файлах — манифестах Kubernetes, workflow GitHub Actions и GitLab CI, Docker Compose, плейбуках Ansible, документах OpenAPI, — потому что его легко читать. Но и сломать его легко: неверный отступ, символ табуляции, незакрытая кавычка или пропущенный пробел после двоеточия могут изменить смысл файла или помешать его загрузке.
Этот валидатор разбирает ваш YAML и сообщает о каждой синтаксической ошибке со строкой и столбцом, а также о предупреждениях вроде неизвестных директив. Если YAML корректен, показываются количество документов и тип корневого значения каждого из них, а также можно вывести аккуратно отформатированную копию с единым отступом.
Как пользоваться
- Вставьте YAML в поле ввода, загрузите файл
.yamlили.ymlлибо нажмите Пример. - Результат появляется по мере ввода: зелёная метка YAML корректен или список ошибок вида
Строка 3, столбец 2. - Оставьте включённым Показывать отформатированный YAML, чтобы получить аккуратную копию, и выберите отступ в 2 или 4 пробела. Скопируйте её кнопкой над блоком.
- Выключайте Повторяющиеся ключи — ошибка, только если ваши инструменты допускают повторяющиеся ключи.
Частые ошибки
server:
port: 8080
host: localhost # indented one space too far
tags: [web, api # missing closing bracket
- Несогласованные отступы: элементы одного уровня должны начинаться в одном столбце. YAML не допускает табуляцию в отступах.
- Нет пробела после двоеточия:
key:value— это обычная строка, а не ключ и значение. - Спецсимволы без кавычек: значения, начинающиеся с
*,&,!,%,@или обратной кавычки, а также содержащие:или#, нужно брать в кавычки. - Неожиданные типы:
yes,no,onиoffв YAML 1.2 — строки, а в старых парсерах YAML 1.1 — логические значения; на всякий случай берите их в кавычки. Номера версий вроде1.10без кавычек превращаются в число 1.1.
Проверка структуры
Этот инструмент проверяет синтаксис — то, является ли текст правильно сформированным YAML. Чтобы проверить, что в файле нужные ключи и типы значений, преобразуйте его инструментом YAML в JSON и проверьте результат валидатором JSON Schema.
Частые вопросы
› По какой версии YAML идёт проверка?
По YAML 1.2 — текущей версии, которую используют большинство современных инструментов. Ввод из нескольких документов, разделённых ---, проверяется по документам.
› Почему повторяющиеся ключи считаются ошибкой?
Спецификация YAML требует, чтобы ключи в отображении были уникальны, а многие парсеры молча оставляют только последнее значение и тем самым скрывают ошибки. Если ваш инструмент сознательно допускает дубли, выключите «Повторяющиеся ключи — ошибка».
› Сохраняются ли комментарии при форматировании?
Да. Комментарии, порядок ключей, якоря и строки в кавычках сохраняются; выравниваются только отступы и пробелы. Длинные строки не переносятся.
› Загружается ли мой YAML куда-нибудь?
Нет. Разбор выполняется в браузере, поэтому конфигурационные файлы с секретами не покидают ваш компьютер.