我遇到了 Terraform 尝试更改由 DeployIfNotExists 策略部署的资源的问题。此策略会自动为专用终结点 ( source )创建 DNS 条目。通常,我会使用ignore_changes
,但这仅适用于首先由 Terraform 部署的资源,然后将忽略 Terraform 之外的所有未来更改。
如何在没有 的情况下部署专用终结点private_dns_zone_group
,以防止将来的任何部署删除private_dns_zone_group
由 Azure 策略部署的终结点?
resource "azurerm_private_endpoint" "private_endpoint" {
name = var.private_endpoint_name
location = var.location
resource_group_name = var.resource_group_name
subnet_id = var.private_subnet_id
private_service_connection {
name = var.private_service_connection_name
is_manual_connection = false
private_connection_resource_id = azurerm_app_service.app_service.id
subresource_names = ["sites"]
}
# This cannot be included, otherwise the DeployIfNotExists policy will not run
# private_dns_zone_group {
# name = "deployedByPolicy"
# private_dns_zone_ids = []
# }
lifecycle {
ignore_changes = [
private_dns_zone_group
]
}
}