azure-validate
Azure Validate — официальный Agent Skill Microsoft для pre-deployment-проверки готовности приложения к развёртыванию в Azure. В источнике указана версия 1.2.2 и MIT-лицензия, а назначение сформулировано как глубокая проверка конфигурации, инфраструктуры на Bicep или Terraform, RBAC role assignments, разрешений managed identity и обязательных prerequisites. Навык не заменяет сам deployment и не обещает, что проект готов автоматически: его задача — собрать проверяемые результаты до запуска следующего этапа. Workflow начинается с жёсткого prerequisite check. До запуска azure-validate должен быть вызван azure-prepare и завершён план `.azure/deployment-plan.md` со статусом `Approved` или более поздним состоянием. Если такого плана нет, инструкция требует немедленно остановиться и сначала вызвать azure-prepare. Каноничесная последовательность в источнике выглядит как `azure-prepare` → `azure-validate` → `azure-deploy`; поэтому запуск проверки в отрыве от подготовленного плана является неполным сценарием, а не коротким способом обойти подготовку. Основные триггеры навыка — проверка готовности приложения к deployment, валидация `azure.yaml` или Bicep, preflight-проверки и диагностика deployment errors. Отдельно перечислены проверки Azure Functions, function app и serverless deployment, а также сверка RBAC roles, role assignments и managed identity permissions. Для инфраструктурных изменений предусмотрена what-if analysis. Эти формулировки описывают направления проверки из официального SKILL.md; конкретные результаты зависят от фактического проекта, его конфигурации, прав и доступных Azure-инструментов. Запуск выполняется workflow-скриптом из каталога `references/scripts`: на Windows используется `workflow.ps1` через `pwsh`, на macOS и Linux — `workflow.sh` через `bash`. Первый вызов делается без аргумента завершённого шага и получает `--workspace-path` либо `-WorkspacePath`. Скрипт печатает следующее действие и значение, которое нужно передать следующим вызовом; затем пользователь выполняет это действие и повторяет workflow с `--completed-step` или `-CompletedStep`. Цикл продолжается до сообщения о завершении azure-validate. Прогресс записывается в `.azure/validate-status.json`, а детали рецептов и проверок ролей вынесены в `references/recipes/README.md` и `references/role-verification.md`. Практический сценарий — подготовить утверждённый deployment plan, запустить пошаговый валидатор в корне рабочей области, выполнить предложенные проверки конфигурации и инфраструктуры, сохранить статус и разобраться с каждым failure до повторного запуска. Важное ограничение связано с полномочиями: инструкция требует, чтобы все проверки прошли, и запрещает deployment при ошибках. Destructive actions требуют `ask_user`. Даже успешная валидация не является автоматическим разрешением на публикацию: если пользователь явно попросил deploy, следующим шагом должен быть azure-deploy; если запрос был только на validate или prepare, workflow останавливается после записи доказательств и статуса `Validated`. Команды `azd up` и `azd deploy` напрямую вместо azure-deploy источник запрещает.
Для чего подходит
- Preflight-проверка Azure deployment
- Валидация Bicep, Terraform и azure.yaml
- Проверка RBAC и managed identity permissions
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/microsoft/skills/tree/main/.github/plugins/azure-skills/skills/azure-validate