Terraform v1.10 で Ephemeral resources が使えるようになったので AzureRM Provider で試してみた
こちらは エーピーコミュニケーションズ Advent Calendar 2024 の 1 日目の記事です。 Ephemeral values の登場 先日リリースされた Terraform v1.10.0 で Ephemeral values という新しい機能が登場しました。 Ephemeral values は次の要素で構成されています。 Ephemeral input variables / Ephemeral output variables Ephemeral resources Write-only attribute (v1.11 で追加予定) この中でも今回は Ephemeral resources に焦点を当ててみます。 Ephemeral resources Terraform にはクラウドプロバイダー等が提供しているリソースを管理する resource ブロックと、リソースを参照するための data ブロックがあります。 例えば、Azure のリソースグループ “example” を Terraform で作成する場合は resource ブロックを次のように記述します。 resource "azurerm_resource_group" "example" { name = "example" location = "japaneast" } 一方、Terraform ではリソースグループを管理せず、既存のリソースグループを参照するだけの場合は data ブロックを使います。 data "azurerm_resource_group" "example" { name = "existing" } output "id" { value = data.azurerm_resource_group.example.id } リソース用のブロックには Terraform Provider が提供するリソース名を指定します。 上記の例では Azure リソースを管理するための AzureRM Provider の azurerm_resource_group が該当します。 ...