😀
Terraform で Azure API Management を何度も作り直す時に便利なパージを入れてみた
Azure API Management など、いくつかの Azure リソースは、リソースを削除して一定の期間 Soft Delete な状態になります。おそらく、誤って当該リソースを削除した時にセキュリティ的な観点で、元に戻す必要があるからだと思われます。同じリソース名でクリーンな環境を再度作成したい場合は、Purge してから作成することになります。そこで今回は、Terraform の設定で、リソース削除時に Purge まで行い、再度同じリソース名で作成できるか試してみました。
検証用 Terraform コード
main.tf
provider "azurerm" {
features {
api_management {
purge_soft_delete_on_destroy = true
}
}
}
resource "azurerm_resource_group" "rg" {
name = "mnrapifn-rg"
location = "japaneast"
}
resource "azurerm_api_management" "apim" {
name = "mnrapifn-apim"
location = azurerm_resource_group.rg.location
resource_group_name = azurerm_resource_group.rg.name
publisher_name = "test"
publisher_email = "test@example.com"
sku_name = "Consumption_0"
}
Terraform を実行して動作確認
bash
$ terraform init
$ terraform plan
$ terraform apply -auto-approve
Apply complete! Resources: 2 added, 0 changed, 0 destroyed.
$ terraform destroy -auto-approve
Destroy complete! Resources: 2 destroyed.
$ terraform apply -auto-approve
Apply complete! Resources: 2 added, 0 changed, 0 destroyed.
参考
Discussion