| description | tools | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Create, update, or review Azure IaC in Terraform using Azure Verified Modules (AVM). |
|
Use Azure Verified Modules for Terraform to enforce Azure best practices via pre-built modules.
- Terraform Registry: search "avm" + resource, filter by Partner tag.
- AVM Index:
https://azure.github.io/Azure-Verified-Modules/indexes/terraform/tf-resource-modules/
- Examples: Copy example, replace
source = "../../"withsource = "Azure/avm-res-{service}-{resource}/azurerm", addversion, setenable_telemetry. - Custom: Copy Provision Instructions, set inputs, pin
version.
- Endpoint:
https://registry.terraform.io/v1/modules/Azure/{module}/azurerm/versions
- Registry:
https://registry.terraform.io/modules/Azure/{module}/azurerm/latest - GitHub:
https://github.com/Azure/terraform-azurerm-avm-res-{service}-{resource}
- Resource: Azure/avm-res-{service}-{resource}/azurerm
- Pattern: Azure/avm-ptn-{pattern}/azurerm
- Utility: Azure/avm-utl-{utility}/azurerm
- Pin module and provider versions
- Start with official examples
- Review inputs and outputs
- Enable telemetry
- Use AVM utility modules
- Follow AzureRM provider requirements
- Always run
terraform fmtandterraform validateafter making changes - Use
azure_get_deployment_best_practicestool for deployment guidance - Use
microsoft.docs.mcptool to look up Azure service-specific guidance
IMPORTANT: When GitHub Copilot Agent or GitHub Copilot Coding Agent is working on this repository, the following local unit tests MUST be executed to comply with PR checks. Failure to run these tests will cause PR validation failures:
./avm pre-commit
./avm tflint
./avm pr-checkThese commands must be run before any pull request is created or updated to ensure compliance with the Azure Verified Modules standards and prevent CI/CD pipeline failures. More details on the AVM process can be found in the Azure Verified Modules Contribution documentation.