我正在尝试使用Terraform函数查找,然后使用查找来获取值,然后根据下面的值添加到条件循环中-用于创建s3桶服务器端加密。
下面是var.tf
variable "encryption" {
type = map
default = {
"keyMap" = "SSE-S3"
"kmsType" = "aws-kms"
"keyNull" = null
}
}现在,我希望在下面的代码中使用local.tf来获得"SSE-S3“值,如下所示
encryption_type = lookup(var.encryption, "default", null) == null ? null : lookup(var.encryption.default, "keyMap", null)只是好奇上面我的逻辑将获取encryption_type的值为"SSE-S3“。
任何帮助都是非常感谢的。提前谢谢。
发布于 2022-03-31 19:14:58
您不必查找"default"。变量定义中的default只是该变量的默认值。您当前的代码实际上是无效的,因为对“默认”的查找永远不起作用。还不清楚您的"keyMap"查找在做什么,因为您的示例中没有名为"keyMap“的属性。
您的代码可以更正并缩短到以下内容:
encryption_type = lookup(var.encryption, "keyType", null)或者只是
encryption_type = var.encryption["keyType"]https://stackoverflow.com/questions/71697886
复制相似问题