You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用HCL将Terraform数组转为external-dns所需字符串格式?

Terraform 列表转external-dns要求的字符串格式实现

针对你的需求,在Terraform v1.3.7中可以通过字符串插值结合join函数快速实现格式转换,具体步骤如下:

  1. 定义变量(若未定义):
variable "r53_zone_names" {
  type    = list(string)
  default = [
    "google.com.",
    "example.com.",
  ]
}
  1. 使用局部值生成目标格式字符串:
locals {
  external_dns_zone_filter = "{${join(",", var.r53_zone_names)}}"
}
  1. 验证结果(可选):
output "formatted_zone_string" {
  value = local.external_dns_zone_filter
}

逻辑说明

  • join(",", var.r53_zone_names) 将列表中的每个域名用逗号连接,生成字符串 google.com.,example.com.
  • 通过Terraform的字符串插值语法${...},把拼接后的字符串包裹在大括号中,最终得到符合external-dns要求的格式:{google.com.,example.com.}

这个方案完全兼容Terraform v1.3.7版本,无需依赖额外插件或复杂逻辑。

内容的提问来源于stack exchange,提问作者ipeacocks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 08:25:55