mcpField
A
azure-validate

azure-validate

Official
github.com/microsoftTesting & quality1.6k570.3k installsUpdated today
Repository

About azure-validate

Azure Validate is a skill for preflight checks before deployment, covering azure.yaml and Bicep validation. It is meant to run after azure-prepare and before azure-deploy. A script walks through each validation step and records progress in a status file.

Key features

  1. 01Validates azure.yaml and Bicep files
  2. 02Runs deployment preflight checks
  3. 03Steps through a script that records progress
  4. 04Helps troubleshoot deployment errors
  5. 05Gates the plan status Validated on passing checks

Use cases

  1. 01Checking whether an app is ready to deploy
  2. 02Diagnosing errors from failed Azure deployments
  3. 03Handing off to azure-deploy when deployment is requested

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/microsoft/azure-skills --skill azure-validate

After installing, type/azure-validatein Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

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

Details

From the project README

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-prepare → azure-validate → azure-deploy

Triggers

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

Rules

  1. Run after azure-prepare, before azure-deploy
  2. All checks must pass—do not deploy with failures
  3. ⛔ 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.

Comments

Markdown supported