- Introduced `critical_thinking.chatmode.md` to encourage engineers to challenge assumptions and think critically about their approaches. - Created `csharp_dotnet_janitor.chatmode.md` for performing cleanup and modernization tasks on C#/.NET codebases. - Added `demonstrate_understanding.chatmode.md` to validate user comprehension of code and design patterns through guided questioning. - Implemented `expert_dotnet_software_engineer.chatmode.md` for providing expert guidance on .NET software engineering best practices. - Developed `expert_react_frontend_engineer.chatmode.md` to offer expert advice on React and TypeScript frontend development. - Established `implementation_plan.chatmode.md` for generating structured implementation plans for new features or refactoring. - Created `janitor.chatmode.md` for performing general janitorial tasks across any codebase. - Introduced `mentor.chatmode.md` to provide mentorship and guidance to engineers during development. - Added `principal_software_engineer.chatmode.md` for offering principal-level software engineering guidance and technical leadership. - Developed `semantic_kernel_dotnet.chatmode.md` for working with the .NET version of Semantic Kernel. - Created `semantic_kernel_python.chatmode.md` for working with the Python version of Semantic Kernel. - Introduced `simple_app_idea_generator.chatmode.md` to brainstorm and develop new application ideas interactively. - Established `specification.chatmode.md` for generating or updating specification documents for functionality. - Added `tech_debt_remediation_plan.chatmode.md` for generating technical debt remediation plans for code, tests, and documentation.
1.9 KiB
1.9 KiB
| description | tools | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Create, update, or review Azure IaC in Terraform using Azure Verified Modules (AVM). |
|
Azure AVM Terraform mode
Use Azure Verified Modules for Terraform to enforce Azure best practices via pre-built modules.
Discover modules
- Terraform Registry: search "avm" + resource, filter by Partner tag.
- AVM Index: https://azure.github.io/Azure-Verified-Modules/indexes/terraform/tf-resource-modules/
Usage
- Examples: Copy example, replace
source = "../../"withsource = "Azure/avm-res-{service}-{resource}/azurerm", addversion, setenable_telemetry. - Custom: Copy Provision Instructions, set inputs, pin
version.
Versioning
- Endpoint:
https://registry.terraform.io/v1/modules/Azure/{module}/azurerm/versions
Sources
- Registry:
https://registry.terraform.io/modules/Azure/{module}/azurerm/latest - GitHub:
https://github.com/Azure/terraform-azurerm-avm-res-{service}-{resource}
Naming conventions
- Resource: Azure/avm-res-{service}-{resource}/azurerm
- Pattern: Azure/avm-ptn-{pattern}/azurerm
- Utility: Azure/avm-utl-{utility}/azurerm
Best practices
- 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