mcpbeat

Azure Validate

microsoft/github-copilot-for-azure-azure-validate

Pre-deployment validation for Azure readiness. Run deep checks on configuration, infrastructure (Bicep or Terraform), RBAC role assignments, managed identity permissions, and prerequisites before deploying. WHEN: validate my app, check deployment readiness, run preflight checks, verify configuration, check if ready to deploy, validate azure.yaml, validate Bicep, test before deploying, troubleshoot deployment errors, validate Azure Functions, validate function app, validate serverless deployment, verify RBAC roles, check role assignments, review managed identity permissions, what-if analysis, validate Container Apps deployment.

23k tokens
context cost
the whole folder, loaded on every use
28
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
242
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/microsoft/GitHub-Copilot-for-Azure --skill azure-validate

What comes with it

89 508 bytes besides the instruction
references/aspire-functions-secrets.md
references/global-rules.md
references/policy-validation.md
references/recipes/README.md
references/recipes/azcli/README.md
references/recipes/azcli/errors.md
references/recipes/azd/README.md
references/recipes/azd/aspire.md
references/recipes/azd/environment.md
references/recipes/azd/errors.md
references/recipes/azd/scripts/set-aspire-aca-env.ps1
references/recipes/azd/scripts/set-aspire-aca-env.sh
references/recipes/bicep/README.md
references/recipes/bicep/errors.md
references/recipes/scripts/validate-deployment.ps1
references/recipes/scripts/validate-deployment.sh
references/recipes/terraform/README.md
references/recipes/terraform/errors.md
references/recipes/terraform/scripts/validate-terraform.ps1
references/recipes/terraform/scripts/validate-terraform.sh
references/region-availability.md
references/role-verification.md
references/scripts/scan-aspire-functions-secrets.ps1
references/scripts/scan-aspire-functions-secrets.sh
references/scripts/workflow.ps1
references/scripts/workflow.sh
version.json

The instruction itself

4 sections, as written by the author

Azure Validate

> AUTHORITATIVE GUIDANCE — Follow these instructions exactly unless they contradict security policies given to you.

> ⛔ STOP — PREREQUISITE CHECK REQUIRED

>

> Before proceeding, verify this prerequisite is met:

>

> azure-prepare was invoked and completed → .azure/deployment-plan.md exists with status Approved or later

>

> If the plan is missing, STOP IMMEDIATELY and invoke azure-prepare first.

>

> The complete workflow ensures success:

>

> azure-prepareazure-validateazure-deploy

Triggers

  • Check if app is ready to deploy
  • Validate azure.yaml or Bicep
  • Run preflight checks
  • Troubleshoot deployment errors

Rules

  • Run after azure-prepare, before azure-deploy
  • All checks must pass—do not deploy with failures
  • Destructive actions require ask_user — global-rules

Steps

Run the workflow script and follow its instructions. It walks you through each validation step one at a time, recording progress in .azure/validate-status.json. Use references/scripts/workflow.ps1 on Windows or references/scripts/workflow.sh on macOS/Linux.

Start by calling the script without the completed-step argument:

pwsh references/scripts/workflow.ps1 -WorkspacePath <workspace-path>
# macOS/Linux: bash references/scripts/workflow.sh --workspace-path <workspace-path>

Each run prints the next action and the value to pass next. Perform the action, then re-run with that value (-CompletedStep <value> for pwsh, --completed-step <value> for bash). Repeat until it reports the azure-validate workflow is complete.

The steps reference recipe details in references/recipes/README.md and role checks in references/role-verification.md.

> ⛔ VALIDATION AUTHORITY

>

> This skill is the officially verified way to set plan status to Validated. You MUST follow the script's instructions to completion before setting status to Validated.

> Do NOT set status to Validated without doing so.


> ⚠️ NEXT STEP — DEPENDS ON USER INTENT

>

> After ALL validations pass, check whether the user asked to deploy:

> - If the user explicitly requested deployment, you MUST invoke azure-deploy to execute it. Do NOT run azd up, azd deploy, or any deployment commands directly — let azure-deploy handle execution.

> - If the user only asked to validate or prepare (not deploy), STOP after recording proof and setting status to Validated. Report the validation results and do NOT invoke azure-deploy.

>

> If any validation failed, fix the issues and re-run azure-validate before proceeding.

How to use it

Copy the folder

Take microsoft/github-copilot-for-azure-azure-validate from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.