Повредить файл YAML онлайн
Повредите файл .yaml или .yml онлайн бесплатно. Ломает отступы и кодировку, поэтому анализаторы конфигураций сразу отклоняют файл.
- Без загрузки на сервер
- Без ограничения размера
- Без регистрации
Испортите свой файл YAML
Настроено под .yaml, .yml, и так же работает с любым другим форматом.
Почему файлы YAML трудно испортить как следует
В YAML пробельные символы значимы, что делает его необычайно хрупким в эксплуатации и необычайно интересным для тестирования. Один неверный отступ меняет смысл документа, а не ломает его, поэтому загрузчики конфигураций без строгой проверки могут молча работать с неверными настройками.
Что разрушает этот инструмент
- Отступы. Ведущие пробелы перезаписываются, схлопывая вложенность, которая и задаёт структуру YAML.
- Разделители ключ/значение. Двоеточия и дефисы уничтожаются, поэтому отображения и последовательности больше не разбираются.
- Маркеры документов. Разделители
---, разделяющие многодокументные файлы, разрушаются. - Корректность кодировки. Некорректные последовательности UTF-8 вызывают сбой до того, как анализатор дойдёт до грамматики.
Что вы увидите после
| Приложение | Поведение |
|---|---|
| PyYAML / ruamel | Возбуждают ScannerError или ParserError с указанием строки и столбца. |
kubectl apply в Kubernetes | «error converting YAML to JSON», и манифест отклоняется. |
| Docker Compose | Отказывается запускаться и сообщает о проблемной строке. |
| Конфигурация CI | Конвейер падает на этапе разбора конфигурации, до запуска хотя бы одного задания. |
Частые причины это сделать
- Проверка того, что сервис отказывается запускаться с некорректной конфигурацией, а не берёт значения по умолчанию.
- Проверка того, что конвейер CI громко падает на сломанном манифесте.
- Проверка того, что шаг валидации конфигурации действительно выполняется перед развёртыванием.
- Создание некорректных манифестов для набора тестов инфраструктуры.
Как испортить файл YAML
- Перетащите файл .yaml в поле выше или нажмите, чтобы выбрать.
- Оставьте уровень Standard, если вам не нужно частичное повреждение (Light) или победа над программами восстановления (Heavy).
- Нажмите Испортить файл. Обработка идёт на вашем устройстве, поэтому заканчивается почти мгновенно.
- Скачайте результат. По умолчанию он сохраняет исходное имя файла и длину в байтах.
Вопросы о YAML
Почему стоит тестировать повреждение YAML?
Потому что повреждение пробелов может изменить смысл вместо того, чтобы вызвать ошибку. Загрузчик без строгой проверки может запуститься с едва заметно неверными настройками, а это гораздо хуже чистого сбоя.
Ломает ли это многодокументные файлы?
Да. Разделители --- входят в число уничтожаемых структур, поэтому документы сливаются друг с другом.
Работает ли это с .yml так же, как с .yaml?
Да. Оба расширения используют один и тот же профиль.
Можно ли получить файл, который разбирается, но неверен?
Уровень «Лёгкий» иногда даёт такой результат, но это не гарантировано. Повреждение случайно, а не нацелено семантически.