agentsclimarketplace

Azure resource manager

Skill MicrosoftDocs/Agent-Skills/skills/azure-resource-manager

Expert knowledge for Azure Resource Manager development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when authoring Bicep/ARM templates, using CLI/PowerShell/REST, Key Vault, AKS, stacks/registries, or multi-scope deployments, and other Azure Resource Manager related development tasks. Not for Azure Blueprints (use azure-blueprints), Azure Policy (use azure-policy), Azure Resource Graph (use azure-resource-graph), Azure Portal (use azure-portal).From its SKILL.md

Install
npx -y skills add MicrosoftDocs/Agent-Skills --skill azure-resource-manager

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

59.0 KB, ~12.8k tokens by cl100k_base, as published. Nobody here has run it

Azure Resource Manager Skill

This skill provides expert guidance for Azure Resource Manager. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.

How to Use This Skill

IMPORTANT for Agent: Use the Category Index below to locate relevant sections. For categories with line ranges (e.g., L35-L120), use read_file with the specified lines. For categories with file links (e.g., [security.md](security.md)), use read_file on the linked reference file

IMPORTANT for Agent: If metadata.generated_at is more than 3 months old, suggest the user pull the latest version from the repository. If mcp_microsoftdocs tools are not available, suggest the user install it: Installation Guide

This skill requires network access to fetch documentation content:

  • Preferred: Use mcp_microsoftdocs:microsoft_docs_fetch with query string from=learn-agent-skill. Returns Markdown.
  • Fallback: Use fetch_webpage with query string from=learn-agent-skill&accept=text/markdown. Returns Markdown.

Category Index

CategoryLinesDescription
TroubleshootingL37-L135Diagnosing and fixing Azure Bicep/ARM deployment errors, including specific BCP codes, template syntax/type issues, scope and decorator problems, policy/SKU/name constraints, and common deployment failures.
Best PracticesL136-L180Best practices for authoring, linting, validating, and testing Bicep/ARM templates, including naming, locations, dependencies, resource IDs, modules, and using the ARM test toolkit.
Decision MakingL181-L194Guidance on migration and relocation decisions: moving from classic/ASM to ARM/Bicep, blueprint-to-stack migration, regional move planning, resource move/tag support, and relocation strategies.
Architecture & Design PatternsL195-L202Bicep architecture patterns for reusable configs, flexible parameters, deterministic name generation, and sharing variables across templates for scalable ARM deployments.
Limits & QuotasL203-L232ARM/Bicep limits, quotas, and constraints: subscription/RG caps, template size and history limits, naming/tag rules, throttling, and how to diagnose and fix quota-related deployment errors.
SecurityL233-L260Securing ARM/Bicep deployments: secrets handling, secure parameters, RBAC, Key Vault integration, Private Link/VNet access, locks, policy/regulatory mapping, and TLS/network security.
ConfigurationL261-L315Configuring ARM and Bicep templates: file structure, parameters, scopes, tags, networking, monitoring, policy, custom providers, portal Form view UI, and deployment/AI tooling setup.
Integrations & Coding PatternsL316-L377Bicep and ARM template functions, operators, and patterns; integrating with CLI/PowerShell/SDKs/REST, using Key Vault, AKS, custom providers, and programmatic resource/tag management.
DeploymentL378-L435Deploying and moving Azure resources with ARM/Bicep: scripts, stacks, registries, multi-scope deployments, CI/CD, and region/subscription relocation for many Azure services.

Troubleshooting

TopicURL
Understand and manage Bicep diagnostic codeshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-core-diagnostics
Fix BCP007 unrecognized Bicep declaration typehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp007
Resolve BCP009 incomplete Bicep declarationshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp009
Resolve BCP018 missing character syntax errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp018
Fix BCP029 invalid Bicep resource type formathttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp029
Resolve BCP033 type mismatch diagnostics in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp033
Resolve BCP034 Bicep array type mismatch errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp034
Fix BCP035 missing required Bicep resource propertieshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp035
Resolve BCP036 Bicep property type mismatch issueshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp036
Fix BCP037 invalid property on Bicep object typehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp037
Resolve BCP040 unsupported string interpolation for keyshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp040
Fix BCP048 unresolved Bicep function overloadshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp048
Resolve BCP052 missing property type errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp052
Fix BCP053 undefined property errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp053
Address BCP055 invalid property access in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp055
Resolve BCP057 undefined name errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp057
Handle BCP062 invalid referenced declaration in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp062
Fix BCP063 invalid name kind errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp063
Resolve BCP070 function argument type mismatch in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp070
Fix BCP071 incorrect function argument count in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp071
Resolve BCP072 invalid symbol references in parameter defaultshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp072
Fix BCP073 assignments to read-only properties in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp073
Fix BCP076 invalid index operator usage in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp076
Resolve BCP077 access to write-only properties in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp077
Fix BCP078 missing values for tagged union propertieshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp078
Handle BCP081 missing resource type metadata in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp081
Resolve BCP082 undefined name with suggestions in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp082
Fix BCP083 mistyped property names in Bicep typeshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp083
Resolve BCP088 property value type typos in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp088
Fix BCP089 invalid or mistyped object properties in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp089
Resolve BCP091 file path not found errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp091
Fix BCP124 invalid decorator targets in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp124
Resolve BCP125 invalid parameter decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp125
Fix BCP126 invalid variable decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp126
Resolve BCP127 invalid resource decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp127
Fix BCP128 invalid module decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp128
Resolve BCP129 invalid output decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp129
Fix BCP130 invalid decorator usage in Bicep param fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp130
Resolve BCP132 missing declaration after decorator in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp132
Fix BCP135 invalid deployment scope for Bicep resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp135
Resolve BCP138 unsupported for-expression contexts in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp138
Fix BCP139 mismatched resource and file scopes in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp139
Fix BCP144 invalid collection references without index in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp144
Resolve BCP147 missing parameter after decorator in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp147
Fix BCP152 invalid function usage as decorator in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp152
Resolve BCP153 missing resource or module after decoratorhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp153
Fix BCP166 duplicate decorator usage in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp166
Resolve BCP170 invalid child resource names with slasheshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp170
Handle BCP192 failed artifact restore for Bicep moduleshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp192
Resolve BCP201 invalid Bicep extension specification stringshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp201
Resolve BCP226 missing diagnostic codes in #disable-next-linehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp226
Fix BCP238 unexpected newline after comma in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp238
Resolve BCP266 metadata identifier errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp266
Fix BCP288 type-used-as-value errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp288
Resolve BCP290 decorator declaration errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp290
Fix BCP292 decorator parameter/output/type errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp292
Resolve BCP293 invalid union member type errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp293
Fix BCP294 non-reducible union type errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp294
Resolve BCP302 invalid Bicep type name errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp302
Fix BCP311 invalid array index errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp311
Resolve BCP318 null-access and conditional resource errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp318
Resolve BCP321 type mismatch diagnostics in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp321
Fix BCP327 value-too-large assignment errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp327
Resolve BCP328 value-too-small assignment errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp328
Fix BCP332 maximum length validation errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp332
Resolve BCP333 minimum length validation errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp333
Handle BCP335 potential maximum length violationshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp335
Fix BCP337 invalid declaration types in parameters fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp337
Resolve BCP338 parameter evaluation failures in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp338
Fix BCP364 discriminator property errors in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp364
Fix BCP401 invalid spread operator usage in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp401
Resolve BCP414 invalid reverse index operator usagehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp414
Resolve BCP416 string pattern mismatch errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp416
Fix BCP420 unresolved or complex scope expressions in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp420
Handle BCP422 function calls on non-existent resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp422
Resolve common Azure Bicep deployment questions and issueshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/frequently-asked-questions
Diagnose and fix Bicep installation errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/installation-troubleshoot
Delete Azure resource groups and handle deletion responseshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/delete-resource-group
Use Azure Resource Manager monitoring reference datahttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/monitor-resource-manager-reference
Resolve common Azure ARM template issues and questionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/frequently-asked-questions
Resolve common Azure ARM deployment errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/common-deployment-errors
Create ARM templates for targeted troubleshootinghttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/create-troubleshooting-template
Enable debug logging for ARM deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/enable-debug-logging
Fix invalid resource name and type segment errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-invalid-name-segments
Diagnose and fix Azure ARM invalid template errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-invalid-template
Resolve resource not found errors in Azurehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-not-found
Fix parent resource dependency errors in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-parent-resource
Resolve RequestDisallowedByPolicy errors in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-policy-requestdisallowedbypolicy
Resolve location ineligible errors for Azure regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-region-access-policy
Fix resource provider registration errors in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-register-resource-provider
Fix reserved resource name errors in Azurehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-reserved-resource-name
Fix SKU not available errors in Azure deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-sku-not-available
Fix storage account name errors in ARM deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-storage-account-name
Find ARM and Bicep deployment error codeshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/find-error-code
Troubleshoot Azure management group SDK errorshttps://learn.microsoft.com/en-us/azure/governance/management-groups/troubleshoot/general

Best Practices

TopicURL
Apply Bicep development best practices for ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/best-practices
Use ARM preflight validation to catch deployment errors earlyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deploy-preflight
Apply and customize Bicep linter best practiceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter
Use explicit locations for Bicep module parametershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-explicit-values-for-loc-params
Scope nested deployment templates correctly in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-nested-deployment-template-scoping
Avoid conflicting metadata decorators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-conflicting-metadata
Avoid root-level deployment resources in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-deployments-resources
Discourage explicit any type usage in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-explicit-any
Apply Bicep linter rule for environment-specific URLshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-hardcoded-environment-urls
Avoid hardcoded Azure locations in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-hardcoded-location
Restrict location expressions to parameter defaultshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-loc-expr-outside-params
Enforce no explicit module name in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-module-name
Remove unnecessary dependsOn entries in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-unnecessary-dependson
Detect unused existing resources in Bicep fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-unused-existing-resources
Detect unused imports in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-unused-imports
Detect unused parameters in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-unused-parameters
Detect unused variables in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-no-unused-variables
Prefer string interpolation over concat in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-prefer-interpolation
Prefer unquoted property names in Bicep objectshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-prefer-unquoted-property-names
Simplify unnecessary string interpolation in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-simplify-interpolation
Simplify JSON null usage in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-simplify-json-null
Use parent property for child resources in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-parent-property
Use recent API versions with Bicep linterhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-recent-api-versions
Use recent Az PowerShell versions in scriptshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-recent-az-powershell-version
Use recent public Bicep module versionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-recent-module-versions
Apply Bicep linter rule for resource ID functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-resource-id-functions
Use resource symbol references instead of list/referencehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-resource-symbol-reference
Refactor Bicep code to use safe access operatorhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-safe-access
Avoid non-deterministic resource names in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-stable-resource-identifier
Prevent preview VM images with Bicep linterhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-stable-vm-image
Apply Bicep linter rule for user-defined typeshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-user-defined-types
Detect what-if short-circuiting in Bicep moduleshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-what-if-short-circuiting
Apply best practices for custom action endpoints in Azurehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/custom-providers-action-endpoint-how-to
Implement custom resource endpoints with Azure best practiceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/custom-providers-resources-endpoint-how-to
Tag mission-critical Azure workloads for resiliency assessmentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-mission-critical-workload
Use ARM toolkit tests for all JSON fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/all-files-test-cases
Apply recommended authoring practices for ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/best-practices
Test createUiDefinition.json with ARM toolkithttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/createuidefinition-test-cases
Validate ARM parameter files with test toolkithttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/parameter-file-test-cases
Apply ARM template test cases for qualityhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-test-cases
Run ARM template test toolkit for best practiceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/test-toolkit

Decision Making

TopicURL
Plan migration from ARM JSON templates to Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/migrate
Migrate Azure Blueprints to deployment stackshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/migrate-blueprint
Plan migration from Azure Service Manager to ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/asm-retirement
Choose between classic and Resource Manager deployment modelshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/deployment-models
Determine which Azure resources support move operationshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-support-resources
Evaluate Azure workloads for regional relocationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-evaluate
Plan Azure workload relocation projects by phasehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-index
Initiate large-scale Azure relocation projectshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-initiate
Choose strategies for Azure workload relocationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-select
Determine Azure resource types that support tagshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-support

Architecture & Design Patterns

TopicURL
Apply the configuration set pattern in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/patterns-configuration-set
Use logical parameter pattern for flexible Bicep deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/patterns-logical-parameter
Implement robust name generation patterns in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/patterns-name-generation
Use shared variable file pattern in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/patterns-shared-variable-file

Limits & Quotas

TopicURL
Deploy Bicep to subscriptions within RG limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deploy-to-subscription
Review deployment stack limitations and known issueshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-stacks-known-issues
Enforce maximum predeployment asserts in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-max-asserts
Validate Bicep outputs against ARM template limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-max-outputs
Validate Bicep parameters against ARM template limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-max-parameters
Validate Bicep resources against ARM template limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-max-resources
Enforce ARM variable count limits in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-max-variables
Configure outputs in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/outputs
Use and constrain parameters in Bicep fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/parameters
Declare Bicep resources within file limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/resource-declaration
Understand template spec limitations and workaroundshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/template-specs-known-issues
Review Azure subscription and service limits and quotashttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits
Networking resource move limitations across subscriptionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-limitations/networking-move-limitations
Handle Azure Resource Manager request throttling limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/request-limits-and-throttling
Apply Azure resource naming rules and restrictionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
Identify Azure resources exempt from 800-per-group limithttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resources-without-resource-group-limit
Apply and understand Azure resource tag limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources
Deploy ARM templates at subscription scopehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-to-subscription
View and manage ARM deployment history limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deployment-history
Understand ARM deployment history limits and cleanup behaviorhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deployment-history-deletions
Configure outputs and respect ARM output limitshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/outputs
Define and constrain parameters in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/parameters
Use ARM template expressions and syntax ruleshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-expressions
Resolve deployment quota exceeded errors in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/deployment-quota-exceeded
Resolve ARM job size exceeded deployment errorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-job-size-exceeded
Resolve resource quota errors in ARM deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/error-resource-quota

Security

TopicURL
Run Bicep deployment scripts inside private virtual networkshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-script-vnet
Execute Bicep deployment scripts via private endpointshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-script-vnet-private-endpoint
Resolve BCP446 trusted registry restriction in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/diagnostics/bcp446
Prevent exposing secrets in Bicep outputshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-outputs-should-not-contain-secrets
Protect commandToExecute secrets in Bicep scriptshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-protect-commandtoexecute-secrets
Avoid hardcoded defaults for secure Bicep parametershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-secure-parameter-default
Secure parameters in nested Bicep deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-secure-params-in-nested-deploy
Ensure secret-like parameters are marked securehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-secure-secrets-in-parameters
Enforce secure adminPassword values in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-use-secure-value-for-secure-inputs
Define Azure RBAC roles and assignments with Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/scenarios-rbac
Manage deployment secrets with Bicep and Key Vaulthttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/scenarios-secrets
Authenticate Azure Resource Manager requests across tenantshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/authenticate-multi-tenant
Configure ARM management access through Private Link (commands)https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/create-private-link-access-commands
Secure ARM management with Private Link via Azure portalhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/create-private-link-access-portal
Protect Azure resources with management lockshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/lock-resources
Manage existing Azure Resource Manager Private Links via APIhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-private-link-access-commands
Map Azure Policy regulatory controls for ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/security-controls-policy
Use Azure Resource Manager service tags in network security ruleshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/service-tags
Plan for TLS version support changes in Azure Resource Managerhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tls-support
Use Key Vault secrets as ARM template parametershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/key-vault-parameter
Securely deploy private ARM templates with SAShttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/secure-template-with-sas-token
Create and share ARM template specs securelyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-specs
Secure ARM template parameters with Azure Key Vaulthttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-tutorial-use-key-vault
Configure hierarchy protection for Azure management groupshttps://learn.microsoft.com/en-us/azure/governance/management-groups/how-to/protect-resource-hierarchy

Configuration

TopicURL
Configure Bicep environment with bicepconfig.jsonhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-config
Configure Bicep linter settings in bicepconfig.jsonhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-config-linter
Configure Bicep module aliases and credentialshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-config-modules
Configure and use Bicep extensions for external resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-extension
Run and configure the Bicep MCP server for AI toolshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-mcp-server
Configure child resource names and types in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/child-resource-name-type
Use supported data types in Bicep fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/data-types
Configure dev environments for Bicep deployment scriptshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-script-bicep-configure-dev
Configure artifacts parameters for Bicep linter compliancehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/linter-rule-artifacts-parameters
Use iterative loops to generate Bicep resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/loops
Define and use Bicep parameter files for deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/parameter-files
Configure resource dependencies in Bicep deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/resource-dependencies
Define Azure monitoring resources using Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/scenarios-monitoring
Configure Azure virtual networks using Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/scenarios-virtual-networks
Set scope for extension resources in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/scope-extension-resources
Create and use user-defined functions in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/user-defined-functions
Use built-in Azure Policy definitions for custom providershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/policy-reference
Configure cache custom resources for Azure Custom Providershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/proxy-cache-resource-endpoint-reference
Configure proxy custom resources for Azure Custom Providershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/proxy-resource-endpoint-reference
Track long-running Azure operations via ARM async statushttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/async-operations
Map Azure services to Resource Manager provider namespaceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-services-resource-providers
Configure Azure Resource Manager for EU data boundaryhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-data-boundary
Configure monitoring and alerts for Azure Resource Managerhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/monitor-resource-manager
Use built-in Azure Policy definitions for ARM governancehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/policy-reference
Configure and manage Azure preview features via Microsoft.Featureshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/preview-features
Use Resource Group insights to monitor application healthhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-group-insights
Manage and delete personal data in Azure Resource Managerhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-manager-personal-data
Discover Azure resource providers, types, and API versionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-providers-and-types
Enforce tag compliance with Azure Policy definitionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-policies
Configure resource tags using Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources-bicep
Configure tags in ARM templates during deploymenthttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources-templates
Configure dev environment for ARM deployment scriptshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deployment-script-template-configure-dev
Use supported Form view UI elements in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-elements
Configure Grid UI element in Form viewhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-grid
Configure LocationSelector element for ARM formshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-locationselector
Configure ManagementGroupSelector in Form viewhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-managementgroupselector
Configure ResourceGroupSelector in Azure Form viewhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-resourcegroupselector
Configure ResourceScope element for ARM deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-resourcescope
Configure SubscriptionSelector in Form view templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-subscriptionselector
Configure TenantSelector for tenant-scope deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-common-tenantselector
Configure BladeInvokeControl element in Form viewhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-microsoft-solutions-bladeinvokecontrol
Author Azure portal Form view JSON definitionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/form-view-overview
Create and use ARM template parameter fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/parameter-files
Configure scope for ARM extension resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/scope-extension-resources
Understand template function behavior in scoped deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/scope-functions
Configure ARM template structure and JSON sectionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/syntax
Author ARM templates reusable across Azure cloudshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-cloud-consistency
Use deployment functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-deployment
Define Azure portal Form view JSON for template specshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-specs-create-portal-forms
Update Visual Studio ARM deployment to Az PowerShellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/update-visual-studio-deployment-script
Configure and manage Azure Service Group membership at scalehttps://learn.microsoft.com/en-us/azure/governance/service-groups/manage-membership

Integrations & Coding Patterns

TopicURL
Use Bicep CLI commands with Azure CLI and PowerShellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-cli
Use Bicep CLI jsonrpc for programmatic tooling integrationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-cli-jsonrpc
Use Bicep any() to bypass type checkinghttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-any
Use Azure Bicep array functions in templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-array
Manipulate CIDR IP ranges in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-cidr
Work with date functions in Bicep fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-date
Retrieve deployment metadata with Bicep functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-deployment
Use Bicep file functions to load external contenthttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-files
Control Bicep deployment flow with fail()https://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-flow-control
Use lambda expressions and functions in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-lambda
Apply logical functions and bool() in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-logical
Use numeric functions and operators in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-numeric
Work with object functions in Bicep templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-object
Use functions in Bicep parameters fileshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-parameters-file
Retrieve Azure resource values with Bicep functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-resource
Get deployment scope values using Bicep functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-scope
Use Azure Bicep string functions in templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-functions-string
Deploy Kubernetes resources to AKS using Bicep extensionhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/bicep-kubernetes-extension
Map JSON ARM template syntax to Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/compare-template-syntax
Use Key Vault secrets as Bicep deployment parametershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/key-vault-parameter
Convert Bicep to JSON ARM templates with MSBuildhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/msbuild-bicep-file
Use the Bicep null-forgiving operator safelyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operator-null-forgiving
Prevent null reference errors with Bicep safe-dereferencehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operator-safe-dereference
Expand arrays and objects with Bicep spread operatorhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operator-spread
Use core Bicep operators in ARM deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operators
Access resources and properties with Bicep accessor operatorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operators-access
Compare values using Bicep comparison operatorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operators-comparison
Evaluate conditions with Bicep logical operatorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operators-logical
Perform calculations with Bicep numeric operatorshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/operators-numeric
Build C# Azure Function endpoints for custom providershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/custom-providers/reference-custom-providers-csharp-endpoint
Manage Azure resource groups using Azure CLIhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-cli
Manage Azure resource groups with PowerShell cmdletshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-powershell
Create and manage resource groups using Python SDKhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-python
Deploy and manage Azure resources using Azure CLIhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-cli
Deploy and manage Azure resources with PowerShellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-powershell
Manage Azure resources programmatically with Python and ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-python
Manage Azure resources via ARM REST API operationshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-rest
Sample Azure Resource Graph queries for ARM resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-graph-samples
Tag Azure resources using Azure CLI commandshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources-cli
Manage Azure resource tags with PowerShellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources-powershell
Tag Azure resources programmatically with Python SDKhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/tag-resources-python
Use built-in functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions
Use ARM template array functions in deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-array
Use CIDR functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-cidr
Use comparison functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-comparison
Work with date functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-date
Use lambda functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-lambda
Apply logical functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-logical
Use numeric functions in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-numeric
Manipulate objects with ARM template functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-object
Retrieve resource values with ARM functionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-resource
Get deployment scope values in ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-scope
Use ARM template string functions effectivelyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-functions-string
Deploy VM Custom Script extensions with ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/template-tutorial-deploy-vm-extensions
Use Azure Resource Graph queries for management groupshttps://learn.microsoft.com/en-us/azure/governance/management-groups/resource-graph-samples
Add Azure Service Group members via REST APIhttps://learn.microsoft.com/en-us/azure/governance/service-groups/create-service-group-member-rest-api
Create Azure Service Groups using REST APIhttps://learn.microsoft.com/en-us/azure/governance/service-groups/create-service-group-rest-api
Run Azure Resource Graph queries for Service Groupshttps://learn.microsoft.com/en-us/azure/governance/service-groups/resource-graph-samples

Deployment

TopicURL
Create Azure resource groups using Bicep deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/create-resource-group
Use deploymentScripts resources in Bicep deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-script-bicep
Develop and structure deployment scripts in Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-script-develop
Manage Azure deployment stacks using Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/deployment-stacks
Set up a private Azure container registry for Bicep moduleshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/private-module-registry
Create and deploy ARM template specs with Bicephttps://learn.microsoft.com/en-us/azure/azure-resource-manager/bicep/template-specs
Move Azure App Service across subscriptionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-limitations/app-service-move-limitations
Move classic Azure resources with ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-limitations/classic-model-move-limitations
Move Cloud Services (extended support) resourceshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-limitations/cloud-services-extended-support
Handle special cases when moving Azure VMshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-limitations/virtual-machines-move-limitations
Execute ARM move operations between subscriptionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/move-resource-group-and-subscription
Cut over Azure workloads after migrationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-cutover
Migrate Azure workloads to a new regionhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocate-migrate
Relocate Azure Application Gateway and WAF between regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-app-gateway
Relocate Azure App Service to another regionhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-app-service
Relocate Azure Automation accounts across regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-automation
Relocate Azure Backup protection to another regionhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-backup
Relocate Azure Container Registry or use geo-replicationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-container-registry
Relocate Azure Cosmos DB NoSQL accounts regionallyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-cosmos-db
Relocate Azure Event Grid custom topics regionallyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-event-grid-custom-topics
Relocate Azure Event Grid domains via ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-event-grid-domains
Relocate Azure Event Grid system topics to new regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-event-grid-system-topics
Relocate Azure Event Hubs namespaces by templatehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-event-hub
Relocate Azure Event Hubs dedicated clustershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-event-hub-cluster
Relocate Azure Firewall protecting a virtual networkhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-firewall
Relocate Azure Functions apps between regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-functions
Relocate Azure HDInsight clusters across regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-hdinsight
Work around lack of Azure Key Vault relocationhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-key-vault
Relocate Azure Kubernetes Service clusters by regionhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-kubernetes-service
Relocate Log Analytics workspaces and reconfigure sendershttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-log-analytics
Relocate Azure NetApp Files volumes across regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-netapp
Relocate Azure Database for PostgreSQL across regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-postgresql-flexible-server
Relocate Azure Private Link Service to new regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-private-link
Relocate Recovery Services vault and Site Recoveryhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-site-recovery
Relocate Azure Static Web Apps to new regionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-static-web-apps
Relocate Azure Virtual Machine Scale Sets regionallyhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-virtual-machine-scale-sets
Relocate Azure Virtual Networks using ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-virtual-network
Relocate Azure Network Security Groups via templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/management/relocation/relocation-virtual-network-nsg
Configure Azure Pipelines CI/CD for ARM templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/add-template-to-azure-pipelines
Create and deploy ARM projects in Visual Studiohttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/create-visual-studio-deployment-project
Deploy ARM templates with Azure CLIhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-cli
Deploy ARM templates from Azure Cloud Shellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-cloud-shell
Deploy ARM templates using GitHub Actionshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-github-actions
Deploy ARM templates using Azure portalhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-portal
Deploy ARM templates with Azure PowerShellhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-powershell
Deploy ARM templates using Python SDKhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-python
Deploy ARM templates via Azure REST APIhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-rest
Use Deploy to Azure button for remote templateshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-to-azure-button
Deploy ARM templates at management group scopehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-to-management-group
Deploy ARM templates to one or many resource groupshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-to-resource-group
Deploy ARM templates at tenant scopehttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-to-tenant
Use what-if analysis for ARM template changeshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deploy-what-if
Understand complete mode deletion behavior in ARMhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/deployment-complete-mode-deletion
Use linked and nested ARM templates for modular deploymentshttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/linked-templates
Configure rollback to previous ARM deployments on errorhttps://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/rollback-on-error

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.