Hello,
I have following variable:
locals {
instance = {
foo = {
replicas = 3
instance_type = "m7a.large"
}
bar = {
replicas = 3
instance_type = "m7a.xlarge"
}
}
}
And have an output:
output "instance_list" {
value = flatten([for k, v in local.instance : [
for i in range(1, v.replicas + 1) : {
name = format("%s-%s", k, i)
instance_type = v.instance_type
}
]])
}
Which produce following:
+ instance_list = [
+ {
+ instance_type = "m7a.xlarge"
+ name = "bar-1"
},
+ {
+ instance_type = "m7a.xlarge"
+ name = "bar-2"
},
+ {
+ instance_type = "m7a.large"
+ name = "foo-1"
},
+ {
+ instance_type = "m7a.large"
+ name = "foo-2"
},
]
But instead of list I’m need produce map object like this:
+ instance_list = {
+ {
+ instance_type = "m7a.xlarge"
+ name = "bar-1"
},
+ {
+ instance_type = "m7a.xlarge"
+ name = "bar-2"
},
+ {
+ instance_type = "m7a.large"
+ name = "foo-1"
},
+ {
+ instance_type = "m7a.large"
+ name = "foo-2"
},
}
How to achieve this?