我有一个来自 terraform 变量的对象列表
variable "persons" {
type = list(object({
name = string,
phonenumber = string,
tshirtSize = string
}))
description = "List of person"
}
Run Code Online (Sandbox Code Playgroud)
现在我想要一个人名列表,以便我可以用它来定义一个 AWS 资源
如何将此对象列表转换为名称列表
["bob", "amy", "jane"]
我在 terraform 0.12.24 上,但如果需要可以升级
更新答案:
使用 splat 表达式
var.persons[*].name
Run Code Online (Sandbox Code Playgroud)
https://www.terraform.io/docs/configuration/expressions.html#splat-expressions
原始答案:
我能够在本地文件中执行此操作
locals {
names = [
for person in var.persons:
person.name
]
}
Run Code Online (Sandbox Code Playgroud)
如需更多阅读,请参见:https : //www.hashicorp.com/blog/hashicorp-terraform-0-12-preview-for-and-for-each/
| 归档时间: |
|
| 查看次数: |
3248 次 |
| 最近记录: |