Azure DNS - Terraform - 忽略 TXT 值

Azure DNS - Terraform - Ignore TXT Value

我有一些有效的 terrform 代码,但我希望能够忽略 DNS TXT 记录值,因为这是使用另一个工具 (acme.sh) 从外部更新的,我尝试了多种不同类型的 HCL 来忽略该值,terraform HCL 不会失败,只是将值设置回原始值

如有任何帮助,我们将不胜感激。

resource "azurerm_resource_group" "mydomain-co-uk-dns" {
  name     = "mydomain.co.uk-dns"
  location = "North Europe"
}

resource "azurerm_dns_zone" "mydomaindns" {
  name                = "mydomain.co.uk"
  resource_group_name = azurerm_resource_group.mydomain-co-uk.name
}


resource "azurerm_dns_txt_record" "_acme-challenge-api" {
  name                = "_acme-challenge.api"
  zone_name           = azurerm_dns_zone.mydomaindns.name
  resource_group_name = azurerm_resource_group.mydomain-co-uk-dns.name
  ttl                 = 300
  record {
    value = "randomkey-that-changes externally"
  }
  tags = {
    Environment = "acmesh"
  }
  lifecycle {
    ignore_changes = [
      record
    ]
  }
}

谢谢

我尝试使用您提供的相同代码进行测试,并成功部署了资源,然后手动更改了门户记录的值并再次应用了 terraform 代码,它没有做任何更改,只是更改了先前记录的值从 terraform 状态文件中的门户更改为较新的值。

注意: 我在 windows_amd64 + 提供商 registry.terraform 上使用了 Terraform v1.0.5。io/hashicorp/azurerm v2.83.0 .

经@Lain 确认,将 azurerm2.70.0 升级到 latest.

后问题已解决