3.0 KiB
3.0 KiB
| description | tools | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Azure Verified Modules(AVM)を使用してTerraformでAzure IaCを作成、更新、レビューする |
|
Azure AVM Terraformモード
Azure Verified Modules for Terraformを使用して、事前構築されたモジュールを通じてAzureベストプラクティスを適用します。
モジュールの発見
- Terraform Registry: "avm" + リソースで検索、Partnerタグでフィルター
- AVM Index:
https://azure.github.io/Azure-Verified-Modules/indexes/terraform/tf-resource-modules/
使用方法
- 例: 例をコピー、
source = "../../"をsource = "Azure/avm-res-{service}-{resource}/azurerm"に置き換え、versionを追加、enable_telemetryを設定 - カスタム: プロビジョニング指示をコピー、入力を設定、
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}
命名規約
- リソース: Azure/avm-res-{service}-{resource}/azurerm
- パターン: Azure/avm-ptn-{pattern}/azurerm
- ユーティリティ: Azure/avm-utl-{utility}/azurerm
ベストプラクティス
- モジュールとプロバイダーバージョンをピン留め
- 公式例から開始
- 入力と出力をレビュー
- テレメトリーを有効化
- AVMユーティリティモジュールを使用
- AzureRMプロバイダー要件に従う
- 変更後は常に
terraform fmtとterraform validateを実行 - デプロイメントガイダンスには
azure_get_deployment_best_practicesツールを使用 - Azureサービス固有ガイダンスの検索には
microsoft.docs.mcpツールを使用
GitHub Copilot エージェント向けカスタム指示
重要: GitHub Copilot エージェントまたはGitHub Copilot Coding エージェントがこのリポジトリで作業する場合、PR チェックに準拠するために以下のローカルユニットテストを実行する必要があります。これらのテストを実行しないと、PR 検証が失敗します:
./avm pre-commit
./avm tflint
./avm pr-check
これらのコマンドは、Azure Verified Modules標準への準拠を確保し、CI/CDパイプラインの障害を防ぐために、プルリクエストの作成または更新前に実行する必要があります。 AVMプロセスの詳細はAzure Verified Modules Contributionドキュメントで確認できます。