* Add new chat modes for Azure Verified Modules, Critical Thinking, C#/.NET Janitor, Demonstrate Understanding, Expert .NET Engineer, Expert React Engineer, Implementation Plan, Universal Janitor, Mentor, Principal Engineer, Semantic Kernel (Python & .NET), Simple App Idea Generator, Specification Generation, and Technical Debt Remediation. Each mode includes detailed instructions, core tasks, best practices, and tools for effective software engineering guidance and support. * Update chatmodes/mentor.chatmode.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
---
|
|
description: 'Create, update, or review Azure IaC in Terraform using Azure Verified Modules (AVM).'
|
|
tools: ['changes', 'codebase', 'editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'azure_get_deployment_best_practices', 'azure_get_schema_for_Bicep']
|
|
---
|
|
# 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 = "../../"` with `source = "Azure/avm-res-{service}-{resource}/azurerm"`, add `version`, set `enable_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 fmt` and `terraform validate` after making changes
|
|
- Use `azure_get_deployment_best_practices` tool for deployment guidance
|
|
- Use `microsoft.docs.mcp` tool to look up Azure service-specific guidance
|