for_each 的 Terraform 动态块不适用于空列表
Terrform dyamic block with for_each not working with empty list
我正在尝试扩展包装 AWS Secrets Manager 的模块。目前它不支持复制,我正在尝试添加它。我正在使用 terraform 0.14.
这是我添加的变量:
variable "replica_regions" {
type = list(string)
description = "A List of Regions"
default = []
}
这是我在“aws_secretsmanager_secret”资源中添加的内容:
dynamic "replica" {
for_each = var.replica_regions
content {
region = replica.value
}
}
这似乎有效,因为当我添加区域时,它开始将秘密复制到这些区域。当我从列表中删除区域时,它会停止在那里复制它们。唯一的问题是当我尝试从 1 个区域转到 0 个区域时,它似乎什么也没做,秘密仍然被复制。当我从调用中删除 replica_regions
并将其明确设置为 []
.
时,就会发生这种情况
想知道这是为什么吗?
这是 terraform-provider-aws
的错误。如果bug被修复,预计当variable处于[]
状态时secret replication会被删除。
This issue应该解决了。
我正在尝试扩展包装 AWS Secrets Manager 的模块。目前它不支持复制,我正在尝试添加它。我正在使用 terraform 0.14.
这是我添加的变量:
variable "replica_regions" {
type = list(string)
description = "A List of Regions"
default = []
}
这是我在“aws_secretsmanager_secret”资源中添加的内容:
dynamic "replica" {
for_each = var.replica_regions
content {
region = replica.value
}
}
这似乎有效,因为当我添加区域时,它开始将秘密复制到这些区域。当我从列表中删除区域时,它会停止在那里复制它们。唯一的问题是当我尝试从 1 个区域转到 0 个区域时,它似乎什么也没做,秘密仍然被复制。当我从调用中删除 replica_regions
并将其明确设置为 []
.
想知道这是为什么吗?
这是 terraform-provider-aws
的错误。如果bug被修复,预计当variable处于[]
状态时secret replication会被删除。
This issue应该解决了。