Is azure-deploy safe?
Grade A, 92/100. No meaningful risk found.
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.
Aazure-deploy
.github/plugins/azure-skills/skills/azure-deploy92/100 · No meaningful risk found10 low
azure-deploy
.github/plugins/azure-skills/skills/azure-deployExecute 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.
- Content hash
- sha256:2f999e3d5e20ca0cfb33d9fbcdb67bef4400cab6f3b3aebfa7fc62cfefd180c7
- Files
- 41
- Quality
- 100/100
Security findings
- lowUploads data to a remote hostSL203 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/functions-deploy.md:80
curl -sS -D - -o /dev/null "https://<func-name>.azurewebsites.net/api/<route>"The skill sends data to a network endpoint. Fix: Make sure the destination is documented and the user approves each upload. Pin the exact host. Severity lowered: the line reads as documentation, not an instruction.
- lowDynamic code evaluationSL303 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/post-deployment.md:38
eval $(azd env get-values)The skill builds code at runtime, which hides what actually runs. Fix: Ship the real code as a file in the skill so it can be reviewed and hashed. Severity lowered: the line reads as documentation, not an instruction.
- lowUploads data to a remote hostSL203 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/post-deployment.md:79
curl -f "$ENDPOINT/health" || echo "Health check failed"The skill sends data to a network endpoint. Fix: Make sure the destination is documented and the user approves each upload. Pin the exact host. Severity lowered: the line reads as documentation, not an instruction.
- lowUploads data to a remote hostSL203 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/post-deployment.md:82
curl -f "$ENDPOINT/api/test-db" || echo "Database connection failed"The skill sends data to a network endpoint. Fix: Make sure the destination is documented and the user approves each upload. Pin the exact host. Severity lowered: the line reads as documentation, not an instruction.
- lowDynamic code evaluationSL303 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/sql-managed-identity.md:16
eval $(azd env get-values)The skill builds code at runtime, which hides what actually runs. Fix: Ship the real code as a file in the skill so it can be reviewed and hashed. Severity lowered: the line reads as documentation, not an instruction.
- lowDynamic code evaluationSL303 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/sql-managed-identity.md:83
eval $(azd env get-values)The skill builds code at runtime, which hides what actually runs. Fix: Ship the real code as a file in the skill so it can be reviewed and hashed. Severity lowered: the line reads as documentation, not an instruction.
- lowDynamic code evaluationSL303 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/sql-managed-identity.md:171
eval $(azd env get-values)The skill builds code at runtime, which hides what actually runs. Fix: Ship the real code as a file in the skill so it can be reviewed and hashed. Severity lowered: the line reads as documentation, not an instruction.
- lowUploads data to a remote hostSL203 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/verify.md:26
curl -f "$ENDPOINT/health" || curl -f "$ENDPOINT"The skill sends data to a network endpoint. Fix: Make sure the destination is documented and the user approves each upload. Pin the exact host. Severity lowered: the line reads as documentation, not an instruction.
- lowDynamic code evaluationSL303 · .github/plugins/azure-skills/skills/azure-deploy/references/recipes/azd/verify.md:85
eval $(azd env get-values)The skill builds code at runtime, which hides what actually runs. Fix: Ship the real code as a file in the skill so it can be reviewed and hashed. Severity lowered: the line reads as documentation, not an instruction.
- lowPipes a download into a shellSL301 · .github/plugins/azure-skills/skills/azure-deploy/references/sdk/azd-deployment.md:8
curl -fsSL https://aka.ms/install-azd.sh | bashRemote code is executed without being reviewed or pinned. Whoever controls that URL controls your machine. Fix: Download to a file, verify a checksum, then run it. Or vendor the script into the skill. Severity lowered: the line reads as documentation, not an instruction.
- infoUnpinned package installSL501 · .github/plugins/azure-skills/skills/azure-deploy/references/sdk/azure-identity-py.md:9
pip install azure-identityInstalling without a version means a future malicious release lands automatically. Fix: Pin an exact version (pkg==1.2.3, pkg@1.2.3). Severity lowered: the line reads as documentation, not an instruction.
- infoUnpinned package installSL501 · .github/plugins/azure-skills/skills/azure-deploy/references/sdk/azure-identity-ts.md:8
npm install @azure/identityInstalling without a version means a future malicious release lands automatically. Fix: Pin an exact version (pkg==1.2.3, pkg@1.2.3). Severity lowered: the line reads as documentation, not an instruction.
Files in this skill
- SKILL.md6.5 KB
- references/auth-best-practices.md6.1 KB
- references/global-rules.md1.2 KB
- references/live-role-verification.md3.9 KB
- references/pre-deploy-checklist.md18.4 KB
- references/region-availability.md3.0 KB
- references/troubleshooting.md8.0 KB
- references/recipes/README.md431 B
- references/recipes/azcli/README.md1.7 KB
- references/recipes/azcli/errors.md492 B
- references/recipes/azcli/verify.md2.0 KB
- references/recipes/azd/README.md3.7 KB
- references/recipes/azd/ef-migrations.md5.0 KB
- references/recipes/azd/errors.md15.4 KB
- references/recipes/azd/functions-deploy.md3.5 KB
- references/recipes/azd/post-deployment.md4.2 KB
- references/recipes/azd/sql-entra-auth.md2.5 KB
- references/recipes/azd/sql-managed-identity.md7.4 KB
- references/recipes/azd/verify.md4.9 KB
- references/recipes/azd/scripts/apply-migrations.ps11.8 KB
- references/recipes/azd/scripts/apply-migrations.sh1.8 KB
- references/recipes/azd/scripts/grant-and-migrate.ps14.2 KB
- references/recipes/azd/scripts/grant-and-migrate.sh4.3 KB
- references/recipes/bicep/README.md2.4 KB
- references/recipes/bicep/errors.md511 B
- references/recipes/bicep/verify.md763 B
- references/recipes/cicd/README.md1.2 KB
- references/recipes/cicd/errors.md542 B
- references/recipes/cicd/verify.md754 B
- references/recipes/cicd/examples/azdo-azd.yml487 B
- references/recipes/cicd/examples/azdo-multistage.yml831 B
- references/recipes/cicd/examples/github-azd.yml782 B
- references/recipes/cicd/examples/github-bicep.yml660 B
- references/recipes/terraform/README.md3.2 KB
- references/recipes/terraform/errors.md858 B
- references/recipes/terraform/verify.md752 B
- references/sdk/azd-deployment.md792 B
- references/sdk/azure-identity-dotnet.md941 B
- references/sdk/azure-identity-java.md1.2 KB
- references/sdk/azure-identity-py.md1.1 KB
- references/sdk/azure-identity-ts.md1.1 KB
Questions about azure-deploy
- Is azure-deploy safe to install?
- Our scanner gave azure-deploy grade A (92/100): no meaningful risk found. It matched 10 rule(s); review them below before installing. Static analysis cannot prove safety, so pin the reviewed revision with a lockfile.
- How do I install azure-deploy in Claude Code or Codex?
- Run skillhash add github:microsoft/azure-skills/.github/plugins/azure-skills/skills/azure-deploy. It downloads the exact commit, checks the grade against your policy, writes skills.lock and installs it into .claude/skills and .agents/skills.
- What happens if azure-deploy changes upstream?
- Its content hash changes. skillhash verify fails in CI until you review the new version and update the lock. With a watch, you also get an alert.
More from microsoft/azure-skills
- A
azure-advisor
1.6kmicrosoft/azure-skills
Use Azure Advisor recommendations. WHEN: "show Advisor recommendations", "service retirements", "update recommendation status". DO NOT USE FOR: fixes or remediation (use azure-advisor-actionability).
No security findings - A
aks-gpu-inference
1.6kmicrosoft/azure-skills
Diagnose Day-2 AKS GPU and KAITO incidents using profile-aware, read-only evidence. WHEN: 'Insufficient nvidia.com/gpu', GPU pod Pending, model-load OOM, DCGM/VRAM, KAITO Workspace not ready, or GPU autoscaling. DO NOT USE FOR: setup (airunway-aks-setup), non-GPU incidents (aks-troubleshooting), standalone VM quota (azure-quotas), or generic cost (cost-analysis or cost-optimization from the optional azure-cost plugin).
No security findings - A
prepare
1.6kmicrosoft/azure-skills
No description in SKILL.md.
No security findings - A
aks-known-issues
1.6kmicrosoft/azure-skills
Lookup documented AKS fixes only when the prompt includes an exact catalog signature and all of its qualifiers: VMCannotFitEphemeralOSDisk; NodePoolMcVersionIncompatible; 'NodeImageVersion is not accepted'; AKS SkuNotAvailable with size, location, and zone; ZonalAllocationFailed with insufficient zone capacity; OverconstrainedAllocationRequest with listed constraints; nested AKS vmssCSE/CSE VMExtensionError_OutboundConnFail, VMExtensionError_K8SAPIServerConnFail, or VMExtensionError_K8SAPIServerDNSLookupFail; or AllocationFailed with the full cataloged internal-error or insufficient-regional-capacity message. Never use for quota errors, code-only or bare wrappers, generic symptoms, incomplete signatures, or failures outside AKS; use aks-troubleshooting or azure-diagnostics.
No security findings - A
aks-network-capture
1.6kmicrosoft/azure-skills
Collects bounded packet captures from AKS nodes and Azure network configuration for wire-level evidence. WHEN: "capture packets on an AKS node", "take a pcap", "run tcpdump on AKS", "prove where packets drop". Use for explicit packet-capture intent after read-only diagnostics, not general AKS connectivity or ingress troubleshooting.
No security findings - A
aks-troubleshooting
1.6kmicrosoft/azure-skills
Debug live Azure Kubernetes Service (AKS) incidents with a read-only, evidence-first investigation. WHEN: pod crashes or Pending, CrashLoopBackOff, OOMKilled, ImagePullBackOff, node NotReady, DNS or ingress failure, connectivity timeout, network policy, SNAT exhaustion, node-pool scaling blocked by QuotaExceeded or InsufficientVCPUQuota, upgrade stuck, spot or zone disruption, a bare VMExtensionProvisioningError or AllocationFailed wrapper, an uncataloged capacity symptom, or 'investigate my AKS cluster'. DO NOT USE FOR: packet capture (use aks-network-capture); GPU or model-serving issues (use aks-gpu-inference); cluster creation or provisioning (use azure-kubernetes); cost (use cost-analysis from the optional azure-cost plugin); pod rightsizing (use azure-kubernetes); a fully qualified documented AKS signature with every required nested qualifier (use aks-known-issues); standalone failures on non-AKS Azure resources (use azure-diagnostics). Unqualified errors and open-ended incidents stay here only for AKS.
No security findings - A
scaffold
1.6kmicrosoft/azure-skills
No description in SKILL.md.
No security findings - A
azure-advisor-actionability
1.6kmicrosoft/azure-skills
Remediate Azure Advisor recommendations. WHEN: "fix Advisor recommendation".
No security findings