Reputation: 95
It's possible to use a variable to add a non-default argument for a resource that is being created with a count loop?
For example:
resource "resource" "example" {
count = length(var.resources)
name = var.resources[count.index]
}
Where var.resources is:
["X", "Y", ...]
And now, I have the necessity to add and specific argument for one of this resources.
Resource "Y" will need a specific argument like " description = example"
It's possible? which is the best option? Use for_each instead of count and map var?
Upvotes: 1
Views: 183
Reputation: 238867
You could reorganize your var.resources
into a map:
variable "resources" {
default = {
"X" = {}
"Y" = {description = "x description"}
}
}
then:
resource "resource" "example" {
for_each = var.resources
name = each.key
description = lookup(each.value, "description", null)
}
Upvotes: 1