【发布时间】:2020-10-06 20:02:48
【问题描述】:
我目前正在使用如下的变量类型 map(string) 来声明列表类型的电子邮件地址值。这工作正常。但是我更喜欢使用 map(string,list) 类型而不是 map(string,string)。
variable "email_addresses" {
type = map(string)
default = {
team1 = "test1@abc.com,test2@abc.com"
team2 = "test3@abc.com,test4@abc.com"
}
data "template_file" "policies" {
for_each = local.policies
template = file(format("${path.module}/policies/%s.yaml", each.key))
vars = {
recipients = lookup(var.email_addresses, element(split("-", each.key), 0), "")
tag = local.tags["name"]
}
}
有没有办法通过将变量设置为任何类型来获取键的值(即接收者),如下所示。
variable "email_addresses" {
type = any
default = {
team1 = [
"test1@abc.com",
"test2@abc.com"
],
team2 = [
"test3@abc.com",
"test4@abc.com"
],
}
}
【问题讨论】:
标签: terraform terraform-provider-aws