Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion common/provision/main.tf
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
variable "configuration" {
validation {
condition = length(var.configuration.bastions) > 0
condition = length(var.configuration.inventory) == 0 || length(var.configuration.bastions) > 0
error_message = "Firewall rules do not allow Terraform to SSH to at least one instance."
}
}
Expand Down
6 changes: 3 additions & 3 deletions common/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,15 @@ variable "instances" {
error_message = "Instances' prefix plus index must be at most 63 lowercase alphanumeric characters and start with a letter. It can include dashes."
}
validation {
condition = alltrue(concat([for key, values in var.instances : [contains(keys(values), "type"), contains(keys(values), "tags")]]...))
condition = length(var.instances) == 0 || alltrue(concat([for key, values in var.instances : [contains(keys(values), "type"), contains(keys(values), "tags")]]...))
error_message = "Each entry in var.instances needs to have at least a type and a list of tags."
}
validation {
condition = sum([for key, values in var.instances : contains(values["tags"], "proxy") ? lookup(values, "count", 1) : 0]) < 2
condition = length(var.instances) == 0 || sum([for key, values in var.instances : contains(values["tags"], "proxy") ? lookup(values, "count", 1) : 0]) < 2
error_message = "At most one instance in var.instances can have the _proxy_ tag"
}
validation {
condition = sum([for key, values in var.instances : contains(values["tags"], "login") ? 1 : 0]) < 2
condition = length(var.instances) == 0 || sum([for key, values in var.instances : contains(values["tags"], "login") ? 1 : 0]) < 2
error_message = "At most one type of instances in var.instances can have the _login_ tag"
}
}
Expand Down
Loading