Bicep Formatter & Validator
Форматируйте и проверяйте шаблоны инфраструктуры как кода Azure Bicep — переиндентируйте декларации resource, module, param и output для согласованного отступа на 2 или 4 пробела и обнаруживайте несбалансированные скобки, неконченные строки/комментарии и неожиданные top-level утверждения.
Ввод
Вывод
| Строка | Серьезность | Сообщение |
|---|---|---|
| No data yet | ||
Руководства
Вставьте шаблон ресурса Bicep с непоследовательным или отсутствующим отступом и получите аккуратно вложенную версию с согласованным отступом — прямо в вашем браузере, без загрузки на сервер. Bicep Formatter & Validator переиндентирует декларации param, var, resource, module, output и type для согласованной вложенности с отступом на 2 или 4 пробела и выявляет основные структурные проблемы: несбалансированные скобки, строка, которая не может легально охватывать строку, незаконченный комментарий или случайное top-level утверждение.
Построено для моментов, когда у вас нет Bicep CLI или расширения VS Code под рукой: шаблон, вставленный из запроса на слияние, фрагмент скопированный из документации или помощника AI с выровненным или смешанным отступом, или быстрая проверка здравомыслия перед тем, как вставить что-то обратно в редактор.
Как его использовать
- Вставьте ваш шаблон Bicep в поле ввода или загрузите файл
.bicep. - При необходимости переключитесь Размер отступа между 2 и 4 пробелами.
- Скопируйте отформатированный результат или загрузите его как
main.bicep.
Форматирование выполняется автоматически при вводе текста или изменении опции, поэтому результат отображается немедленно. Отдельная таблица Проблемы валидации содержит список всех найденных проблем — или подтверждает отсутствие ошибок.
Что он делает
- Согласованный отступ, вычисляемый из фактической вложенности скобок, а не из какого-либо отступа в исходном коде — шаблон с нулевым отступом форматируется точно так же, как уже аккуратный.
- Декораторы и выражения цикла "прижимаются" правильно.
@allowed([...])и выражение цикла ресурса's= [for item in items: {...}]открывают две скобки в одной строке, но всегда отступают содержимое только на один уровень, соответствуя тому, как их обрабатывает реальный форматер Bicep — а не наивный подсчет одного-отступа-на-скобку. - Строки и комментарии остаются нетронутыми. Скобки внутри строки — включая интерполяцию
${...}, которая может содержать дополнительные вложенные строки и выражения — никогда не влияют на отступ. Многострочная строка'''...'''или блочный комментарий/* ... */сохраняются байт-за-байтом после начала вместо риска повреждения буквального содержимого. - Ничего не переупорядочивается. Порядок свойств, спад внутри строки и каждое значение остаются ровно так, как они были написаны — изменяется только ведущий пробел.
- Базовая валидация: несбалансированные
{ }/[ ]/( ), простая строка'...', которая попадает на необработанный перевод строки (только строки'''могут охватывать строки), незаконченный блочный комментарий и top-level строка, которая не начинается с распознанного ключевого слова декларации (param,var,resource,module,output,type,func,targetScope,metadata,import,extension,using,provider).
Конфиденциальность
Все происходит на стороне клиента в вашем браузере. Ваш шаблон никогда не загружается на сервер — вставьте один с реальными ID подписок или именами ресурсов, и он никогда не покинет вашу машину.
Заменяет ли это bicep format из Bicep CLI?
Для исправления отступа и обнаружения четырех или пяти основных ошибок выше — да. Это не проверяет имена свойств по сравнению со схемами ресурсов Azure, не разрешает ссылки модулей и не оценивает выражения — для этого предназначены bicep build/bicep lint (которые требуют Bicep CLI на основе .NET).
Это сломает мой шаблон?
Форматер изменяет только ведущий пробел — он никогда не трогает порядок свойств, значения или внутренние пробелы. Когда он находит структурную проблему, которую он не может безопасно переформатировать (несбалансированная скобка, незаконченная строка), он оставляет ваш ввод нетронутым и сообщает о проблеме в таблице Проблемы валидации вместо угадывания.
Связанные инструменты
- Terraform Formatter — тот же вид переиндентации для конкурирующего языка IaC от HashiCorp.
- Kubernetes YAML Formatter — для манифестов YAML, которые шаблоны Bicep часто развертывают рядом.
- JSON Formatter — для скомпилированного шаблона ARM, который файл
.bicepтранспилирует.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/bicep-formatter-validator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"bicepInput": "@description('Name of the storage account')\npara…",
"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 `bicep-formatter-validator` tool (Bicep Formatter & Validator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.