【发布时间】:2020-10-17 04:17:06
【问题描述】:
我正在为这种插值而苦苦挣扎,我在下面有一些变量。
primary = ["foo.dev","all.bar.com"]
secondary = ["module.foo.dev","*.foo.dev","all.bar.com"]
我希望我的输出是
{
"foo.dev" = ["module.foo.dev","*foo.dev"]
"all.bar.com" = ["all.bar.com"]
}
使用 Terraform 0.12.20
我在 terraform 控制台中尝试过,但无法达到我想要的输出。有什么简单的解决办法吗?
[for i in ["foo.dev","all.bar.com"]: map(i,[for j in ["module.foo.dev","*foo.dev","all.bar.com"]: replace(j,i,"")!=j == true ? j : 0])]
[
{
"foo.dev" = [
"module.foo.dev",
"*foo.dev",
"0",
]
},
{
"all.bar.com" = [
"0",
"0",
"all.bar.com",
]
},
]
【问题讨论】:
-
你能解释一下这种关联的逻辑吗……为什么不从一开始就提供正确的地图?
标签: terraform terraform-provider-aws terraform0.12+