【发布时间】:2020-10-16 03:49:44
【问题描述】:
我对如何让这个工作感到困惑,我有一个子域 (module.foo.dev) 和备用域名为 *.foo.dev 但它必须使用与我的 root_domain 相同的 zone_id。
我正在尝试使用类似的本地地图
all_domains = {
["module.foo.dev","*.foo.dev"] = "foo.dev"
["bar.com"] = "bar.com"
}
我的变量如下 primary_domain = "module.foo.dev" sub_alternate_domain = ["*.foo.dev","bar.com"]
最终会在下面的模块中使用该 locals 值 模块:
resource "aws_route53_record" "record" {
count = var.validation_method == "DNS" ? local.all_domains : 0
name = aws_acm_certificate.certificate.domain_validation_options.0.resource_record_name
type = aws_acm_certificate.certificate.domain_validation_options.0.resource_record_type
zone_id = data.aws_route53_zone.selected[count.index].zone_id
ttl = "300"
records = [aws_acm_certificate.certificate.domain_validation_options.0.resource_record_value]
}
有人可以帮我解决这个问题吗..
【问题讨论】:
-
您可以在此处的文档中找到映射类型初始化的语法:terraform.io/docs/configuration/functions/map.html
-
@MattSchuchard 地图功能已被弃用。
-
@AlainO'Dea 该链接既有旧的函数,也有地图的当前初始化语法。
-
@MattSchuchard 没有争论,只是澄清读者不应将其视为使用 map 功能的邀请。有趣的是,TF12 map 语法示例比表达式语言文档中的更好。奇怪的世界。
标签: terraform amazon-route53 terraform-provider-aws