Перейти к основному содержанию

Форматтер YAML для Ansible playbook

Приведите в порядок YAML-файлы Ansible playbook, ролей или списков задач: нормализуйте отступы до единого шага в 2 или 4 пробела и исправьте дефисы элементов списков. Работает полностью в вашем браузере — ничего не загружается.

Ввод

Drop a file or browse
One file · text
Или

Вывод

Отформатированный YAML
 
Это было полезно?

Руководства

Неаккуратный YAML Ansible — один из самых частых источников трения в рабочих процессах DevOps: playbook-файлы копируются между ролями, редактируются разными членами команды с разными настройками редакторов или вставляются из Slack и трекеров задач, и в итоге в одном файле смешиваются отступы в 2, 3 и 4 пробела. Поскольку структура YAML и есть его пробелы, непоследовательные отступы — это не просто некрасиво: они могут молча изменить, к какой задаче относится тот или иной элемент.

Этот инструмент переоформляет отступы в YAML playbook-файлов, ролей и списков задач Ansible до единого шага (2 или 4 пробела), чтобы визуальная структура соответствовала реальному смыслу документа. Он также приводит в порядок дефисы элементов списков, сводя - name: foo или -name: foo к принятому виду - name: foo.

Как пользоваться

  1. Вставьте ваш playbook.yml, tasks/main.yml роли или любой список задач в поле ввода — или загрузите файл .yml/.yaml напрямую.
  2. Выберите 2 пробела или 4 пробела как размер отступа (2 — это общепринятая в сообществе Ansible конвенция).
  3. Отформатированный YAML мгновенно появляется на панели вывода. Скопируйте его или скачайте как playbook.yml.

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

Что инструмент делает — и чего не делает

Этот форматтер работает построчно: он отслеживает, насколько глубоко каждая строка была изначально отступлена относительно соседних строк, а затем заново выводит каждую строку с пропорциональным единым шагом отступа. Этого достаточно, чтобы исправить подавляющее большинство реальных «грязных» YAML — непоследовательные пробелы, смешение табуляции с пробелами и неровные маркеры списков.

Чего он намеренно не делает — так это не разбирает YAML в структурированный документ. Он не переставляет ключи задач Ansible (name → module → whenregister и т.д.), не проверяет структуру playbook (отсутствующий hosts:, задачи без module) и не отмечает проблемы в стиле ansible-lint, например короткие имена модулей, которые должны быть полностью квалифицированными именами коллекций. Для всего этого нужен настоящий YAML-парсер и понимание схемы с учётом Ansible, чего этот лёгкий форматтер без зависимостей не делает. Если ваш YAML использует коллекции в потоковом стиле ({ key: value }, [a, b, c]) или многострочные блочные скаляры (|, >), эти значения передаются как есть, без переструктурирования — нормализуются только построчные отступы и маркеры списков.

Для большинства повседневных задач вроде «мой playbook в беспорядке, пожалуйста, уберите лишние пробелы» этого ровно достаточно. Для глубокого линта запускайте сам ansible-lint.

Загружается ли мой YAML куда-либо?

Нет. Форматирование происходит полностью в вашем браузере — YAML, который вы вставляете или загружаете, никогда не покидает ваше устройство и не касается наших серверов.

Проверит ли этот инструмент корректность моего playbook?

Нет — он только нормализует отступы и пробелы вокруг маркеров списков. Он не обнаружит отсутствующие обязательные ключи, неверные имена модулей или логические ошибки. Для настоящей проверки используйте ansible-playbook --syntax-check или ansible-lint.

Работает ли он и с YAML, не связанным с Ansible?

Да. Хотя инструмент заточен под playbook Ansible, в его основе лежит универсальный переоформитель отступов YAML, — он отлично справляется с манифестами Kubernetes, рабочими процессами GitHub Actions и любым другим YAML-файлом, которому просто нужно привести отступы в порядок.

Что произойдёт, если я вставлю недействительный или не-YAML текст?

Форматтер никогда не выдаёт ошибку. Поскольку он работает со строками и отступами, а не разбирает документ, он просто переоформит отступы любого текста, который вы ему дадите, как сможет, вместо того чтобы показывать сообщение об ошибке парсинга.

yamlansibleplaybookformatterdevopsindentation

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/ansible-playbook-yaml-formatter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inputYaml": "- hosts: web\n  become: yes\n  vars:\n      nginx_p…",
    "indentSize": "2"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `ansible-playbook-yaml-formatter` tool (Ansible Playbook YAML Formatter) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Нравятся инструменты? Уберите рекламу.

Один платёж навсегда убирает всю рекламу с вашего аккаунта. Без подписки, без слежки.