azure-deploy
microsoft/azure-skills
Execute Azure deployments for prepared applications with built-in error recovery and validation.
What is azure-deploy?
Deploys already-prepared Azure applications that have a .azure/deployment-plan.md file and passing validation status. Use this skill to run azd up, azd deploy, terraform apply, or az deployment commands on projects with existing infrastructure code. Requires prior completion of azure-prepare and azure-validate skills.
- Executes azd up, azd deploy, terraform apply, and az deployment commands with error recovery
- Verifies deployment plan status and validation proof before proceeding
- Performs pre-deploy checklist including RBAC health checks for Container Apps + ACR
- Handles post-deployment configuration including SQL managed identity and EF migrations
- Verifies deployment success and confirms endpoint accessibility
- Queries Azure to validate provisioned RBAC roles are correct and sufficient
How to install azure-deploy
npx skills add https://github.com/microsoft/azure-skills --skill azure-deploy- azure-prepare skill must be completed with .azure/deployment-plan.md created
- azure-validate skill must be completed with status Validated
- Validation Proof section in deployment plan must be populated with actual validation results
- Azure Developer CLI (azd) installed and configured
How to use azure-deploy
- 1.Read .azure/deployment-plan.md and verify status equals Validated with populated Validation Proof section
- 2.Complete all steps in the Pre-Deploy Checklist
- 3.Load the appropriate recipe based on recipe.type in the deployment plan
- 4.For Container Apps + ACR: run azd provision --no-prompt and verify AcrPull role propagation
- 5.Execute deployment following the loaded recipe steps
- 6.Configure SQL managed identity and apply EF migrations if applicable
- 7.Handle any errors using the recipe's errors.md guidance
- 8.Verify deployment completed and endpoints are accessible
Use cases
- Push updates to an existing Azure deployment after code changes
- Execute production deployments of applications with prepared infrastructure
- Deploy applications with API Management (APIM) gateway infrastructure already created
- Run Bicep or Terraform deployments on validated infrastructure plans
- Ship already-built code to Azure after validation passes
- DevOps engineers executing validated deployment plans
- Developers pushing prepared applications to production
- Teams managing existing Azure infrastructure deployments
- Engineers deploying applications with APIM or AI gateway infrastructure
azure-deploy FAQ
Use azure-deploy only when the application is already prepared with .azure/deployment-plan.md and has passed azure-validate. Use azure-prepare when creating a new application or setting up infrastructure for the first time.
The deployment will fail. The azure-validate skill must be invoked and completed with status Validated before azure-deploy proceeds. Do not manually update the plan status.
No. Only the azure-validate skill is authorized to set the status to Validated after running actual validation checks. Manually updating the status will cause deployment failures.
Wait for the AcrPull role to propagate (this can take a few minutes), then retry. The pre-deploy checklist includes specific steps to verify role propagation before proceeding.
All endpoint URLs must be presented as fully-qualified URLs with https:// scheme (e.g., https://myapp.azurewebsites.net), even if Azure CLI returns bare hostnames.
Full instructions (SKILL.md)
Source of truth, from microsoft/azure-skills.
name: azure-deploy description: "Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: "run azd up", "run azd deploy", "execute deployment", "push to production", "push to cloud", "go live", "ship it", "bicep deploy", "terraform apply", "publish to Azure", "launch on Azure". DO NOT USE WHEN: "create and deploy", "build and deploy", "create a new app", "set up infrastructure", "create and deploy to Azure using Terraform" — use azure-prepare for these." license: MIT metadata: author: Microsoft version: "1.1.2"
Azure Deploy
AUTHORITATIVE GUIDANCE — MANDATORY COMPLIANCE
PREREQUISITE: The azure-validate skill MUST be invoked and completed with status
ValidatedBEFORE executing this skill.
⛔ STOP — PREREQUISITE CHECK REQUIRED Before proceeding, verify BOTH prerequisites are met:
- azure-prepare was invoked and completed →
.azure/deployment-plan.mdexists- azure-validate was invoked and passed → plan status =
ValidatedIf EITHER is missing, STOP IMMEDIATELY:
- No plan? → Invoke azure-prepare skill first
- Status not
Validated? → Invoke azure-validate skill first⛔ DO NOT MANUALLY UPDATE THE PLAN STATUS
You are FORBIDDEN from changing the plan status to
Validatedyourself. Only the azure-validate skill is authorized to set this status after running actual validation checks. If you update the status without running validation, deployments will fail.DO NOT ASSUME the app is ready. DO NOT SKIP validation to save time. Skipping steps causes deployment failures. The complete workflow ensures success:
azure-prepare→azure-validate→azure-deploy
Triggers
Activate this skill when user wants to:
- Execute deployment of an already-prepared application (azure.yaml and infra/ exist)
- Push updates to an existing Azure deployment
- Run
azd up,azd deploy, oraz deploymenton a prepared project - Ship already-built code to production
- Deploy an application that already includes API Management (APIM) gateway infrastructure
Scope: This skill executes deployments. It does not create applications, generate infrastructure code, or scaffold projects. For those tasks, use azure-prepare.
APIM / AI Gateway: Use this skill to deploy applications whose APIM/AI gateway infrastructure was already created during azure-prepare. For creating or changing APIM resources, see APIM deployment guide. For AI governance policies, invoke azure-aigateway skill.
Rules
- Run after azure-prepare and azure-validate
.azure/deployment-plan.mdmust exist with statusValidated- Pre-deploy checklist required — Pre-Deploy Checklist
- ⛔ Destructive actions require
ask_user— global-rules - Scope: deployment execution only — This skill owns execution of
azd up,azd deploy,terraform apply, andaz deploymentcommands. These commands are run through this skill's error recovery and verification pipeline.
Steps
| # | Action | Reference |
|---|---|---|
| 1 | Check Plan — Read .azure/deployment-plan.md, verify status = Validated AND Validation Proof section is populated | .azure/deployment-plan.md |
| 2 | Pre-Deploy Checklist — MUST complete ALL steps | Pre-Deploy Checklist |
| 3 | Load Recipe — Based on recipe.type in .azure/deployment-plan.md | recipes/README.md |
| 4 | RBAC Health Check — For Container Apps + ACR with managed identity: run azd provision --no-prompt, then verify AcrPull role has propagated before proceeding (see checklist) | Pre-Deploy Checklist — Container Apps RBAC |
| 5 | Execute Deploy — Follow recipe steps | Recipe README |
| 6 | Post-Deploy — Configure SQL managed identity and apply EF migrations if applicable | Post-Deployment |
| 7 | Handle Errors — See recipe's errors.md | — |
| 8 | Verify Success — Confirm deployment completed and endpoints are accessible | Verification |
| 9 | Live Role Verification — Query Azure to confirm provisioned RBAC roles are correct and sufficient | live-role-verification.md |
| 10 | Report Results — Present deployed endpoint URLs to the user as fully-qualified https:// links | Verification |
⛔ URL FORMAT RULE
When presenting endpoint URLs to the user, you MUST always use fully-qualified URLs with the
https://scheme (e.g.https://myapp.azurewebsites.net, notmyapp.azurewebsites.net). Many Azure CLI commands return bare hostnames without a scheme — always prependhttps://before presenting them.
⛔ VALIDATION PROOF CHECK
When checking the plan, verify the Validation Proof section (Section 7) contains actual validation results with commands run and timestamps. If this section is empty, validation was bypassed — invoke azure-validate skill first.
SDK Quick References
- Azure Developer CLI: azd
- Azure Identity: Python | .NET | TypeScript | Java
MCP Tools
| Tool | Purpose |
|---|---|
mcp_azure_mcp_subscription_list | List available subscriptions |
mcp_azure_mcp_group_list | List resource groups in subscription |
mcp_azure_mcp_azd | Execute AZD commands |
azure__role | List role assignments for live RBAC verification (step 9) |
References
- Troubleshooting - Common issues and solutions
- Post-Deployment Steps - SQL + EF Core setup
Related skills
More from microsoft/azure-skills and the wider catalog.
finetuning
Fine-tune models on Azure AI Foundry with SFT, DPO, or RFT training methods.
azure-ai
Azure AI services skill for Search, Speech, OpenAI, and Document Intelligence in coding agents
azure-diagnostics
Debug Azure production issues using AppLens, Azure Monitor, resource health, and systematic triage.
azure-prepare
Generate Azure deployment infrastructure (Bicep/Terraform, azure.yaml, Dockerfiles) for new or existing apps
azure-storage
Azure Storage skill: Blob, File Shares, Queue, Table, and Data Lake with access tier guidance and lifecycle management
azure-validate
Pre-deployment validation for Azure readiness with configuration, infrastructure, and RBAC checks.