"true"值是字符串,但"false"值是元组



我试图根据布尔值打印值。由于某些原因,它错误输出

我的地方。Tf文件如下:

locals {
test = true
non_test = true
domains = [
{ name: "testing-1",
id: "SWT1",
building: "D1"
},
{  name: "testing-2",
id: "SWT2",
building: "D2"
},
{  name: "testing-3",
id: "SWT3",
building: "D3"
}
]
}

误差

> local.test && local.non_test ? local.domains[0].name : local.domains[*].name
╷
│ Error: Inconsistent conditional result types
│
│   on <console-input> line 1:
│   (source code not available)
│
│ The true and false result expressions must have consistent types. The 'true' value is string, but the 'false' value is tuple.

我在这里错过了什么吗?

在条件中可以有两个列表或两个字符串,但不能是它们的混合。我认为列表会更好,所以应该是:

local.test && local.non_test ? [local.domains[0].name] : local.domains[*].name

最新更新