azure-prepare
Azure Prepare — официальный skill Microsoft для подготовки приложений к развёртыванию через Azure Developer CLI (azd). Он относится именно к workflow azd: его следует выбирать, когда пользователь явно хочет использовать azd либо проект уже содержит azure.yaml. Для обычного deployment без azd, для code-only публикации Python в App Service и для межоблачной миграции Microsoft предлагает другие специализированные skills, поэтому Azure Prepare не следует применять как универсальную инструкцию по любому Azure-развёртыванию. Главный результат skill — подготовленный, проверяемый план и набор артефактов для дальнейшего deployment. В область подготовки входят azure.yaml, инфраструктура в Bicep или Terraform и Dockerfiles для компонентов приложения. В workflow также могут входить Azure Functions с event-driven сценариями, например timer trigger или Service Bus trigger, managed identity и подготовка инфраструктуры для приложений, которые нужно создать, изменить, модернизировать или разместить в Azure. Эти возможности не означают, что skill сам выполняет публикацию: его граница заканчивается подготовкой, а запуск deployment передаётся отдельному workflow azure-deploy после проверки. Важное правило Azure Prepare — сначала составить план. Самым первым действием в корне workspace создаётся skeleton файла .azure/deployment-plan.md; затем он постепенно заполняется и остаётся на диске на всём протяжении работы. До генерации кода, инфраструктуры или конфигурации нужно остановиться, проанализировать workspace и определить режим NEW, MODIFY или MODERNIZE, собрать требования, просканировать технологии и зависимости, выбрать рецепт и спроектировать архитектуру. В качестве вариантов рассматриваются AZD, Azure CLI, Bicep и Terraform; AZD является вариантом по умолчанию, если требования не требуют другого. В план заносятся решения по компонентам и Azure-сервисам, после чего его нужно показать пользователю и получить одобрение. После одобрения план становится рабочей опорой для подготовки. Skill предписывает исследовать компоненты и загрузить относящиеся к выбранной архитектуре reference-материалы, подтвердить Azure context — subscription, location и ограничения provisioning, затем сгенерировать только нужные артефакты. Для существующего приложения нельзя использовать azd init с template: шаблонная инициализация предназначена для нового проекта, а существующий workspace нужно изменять на месте. Нельзя удалять пользовательский проект или workspace. Если Bicep-шаблоны были внесены выбранным azd template и полностью заменены Terraform-эквивалентами, допускается удалить только эти шаблонные файлы после завершения Terraform-конверсии; пользовательские Bicep-файлы затрагивать нельзя. Подготовка должна учитывать безопасность и проверяемость. Для SQL Server Bicep нельзя генерировать administratorLogin или administratorLoginPassword ни в обычных свойствах, ни в условных ветвях; используется только Entra-only authentication с azureADOnlyAuthentication: true. Разрушительные действия требуют отдельного подтверждения пользователя. Перед hand-off нужно проверить, что созданные конфигурация и инфраструктура соответствуют выбранному пути и что приложение функционально проверено, насколько это возможно. После этого статус .azure/deployment-plan.md переводится в Ready for Validation, вызывается azure-validate, и только после успешной валидации следующий этап может быть передан azure-deploy. Прямая команда azd up, azd deploy или terraform apply не является частью Azure Prepare. Практические сценарии skill включают подготовку нового azd-приложения, добавление Azure-сервисов к существующему приложению, модернизацию приложения под Azure, создание azure.yaml, выбор Bicep или Terraform для инфраструктуры, подготовку Dockerfile и deployment plan, а также настройку event-driven Azure Functions и managed identity в рамках azd-проекта. При этом результатом остаётся план и подготовленные файлы, а не утверждение, что deployment уже выполнен или что инфраструктура безопасна без последующей валидации. Для корректного применения нужно явно зафиксировать режим workspace, выбранный рецепт, Azure context, ограничения и обязательный следующий шаг azure-validate.
Для чего подходит
- Создание azure.yaml для azd
- Генерация Bicep или Terraform инфраструктуры
- Подготовка Dockerfile и Azure deployment plan
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/microsoft/skills/tree/main/.github/plugins/azure-skills/skills/azure-prepare