gpt4 book ai didi

terraform - 如何从 Terraform 中的 map 中删除与键值匹配的值

转载 作者:行者123 更新时间:2023-12-04 01:15:37 25 4
gpt4 key购买 nike

我有一个如下所示的示例 map ,我正在尝试删除任何具有与“bong”匹配的 key2 值的帐户。
所以起始 map 看起来像这样:

sample_map={
account1 = {
key1 ="foo"
key2 ="bar"
}
account2 = {
key1 ="bing"
key2 ="bong"
}
}
最终结果应该是这样的:
new_map={
account1 = {
key1 ="foo"
key2 ="bar"
}
}
我尝试操作以下 for 循环,但它仅在 var.exclude 匹配标签(不是键)时才有效。
new_map = { for k, v in var.sample_map : k => v if ! contains(var.exclude, k) }

最佳答案

如果我理解正确的话,你就快到了。它应该是:

contains(values(v), var.exclude)
工作示例如下:

variable "sample_map" {

default ={
account1 = {
key1 ="foo"
key2 ="bar"
}
account2 = {
key1 ="bing"
key2 ="bong"
}
}
}

variable "exclude" {
default = "bong"
}


output "test" {
value = { for k, v in var.sample_map: k => v if ! contains(values(v), var.exclude) }
}
这使:
test = {
"account1" = {
"key1" = "foo"
"key2" = "bar"
}
}

关于terraform - 如何从 Terraform 中的 map 中删除与键值匹配的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63463671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com