2023-11-10 07:32:18 -05:00
|
|
|
variable "name" {
|
|
|
|
type = string
|
|
|
|
description = "Name of the Constellation cluster."
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "project" {
|
|
|
|
type = string
|
|
|
|
description = "The project ID to deploy the cluster to."
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "service_account_id" {
|
|
|
|
type = string
|
|
|
|
description = "The service account ID to use for the cluster."
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "image" {
|
|
|
|
type = string
|
2023-11-13 14:13:24 -05:00
|
|
|
description = "Node image reference or semantic release version. When not set, the latest default version will be used."
|
|
|
|
default = "@@CONSTELLATION_VERSION@@"
|
2023-11-13 12:46:20 -05:00
|
|
|
}
|
2023-11-10 07:32:18 -05:00
|
|
|
|
|
|
|
variable "microservice_version" {
|
|
|
|
type = string
|
|
|
|
description = "Microservice version. When not set, the latest default version will be used."
|
|
|
|
default = ""
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "kubernetes_version" {
|
|
|
|
type = string
|
|
|
|
description = "Kubernetes version. When not set, the latest default version will be used."
|
|
|
|
default = ""
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "node_groups" {
|
|
|
|
type = map(object({
|
|
|
|
role = string
|
|
|
|
initial_count = optional(number)
|
|
|
|
instance_type = string
|
|
|
|
disk_size = number
|
|
|
|
disk_type = string
|
|
|
|
zone = string
|
|
|
|
}))
|
|
|
|
description = "A map of node group names to node group configurations."
|
|
|
|
validation {
|
|
|
|
condition = can([for group in var.node_groups : group.role == "control-plane" || group.role == "worker"])
|
|
|
|
error_message = "The role has to be 'control-plane' or 'worker'."
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "zone" {
|
|
|
|
type = string
|
|
|
|
description = "The availability zone name to create the cluster in."
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "debug" {
|
|
|
|
type = bool
|
|
|
|
default = false
|
|
|
|
description = "DON'T USE IN PRODUCTION: Enable debug mode and allow the use of debug images."
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
variable "custom_endpoint" {
|
|
|
|
type = string
|
|
|
|
default = ""
|
|
|
|
description = "Custom endpoint (DNS Name) to use for the Constellation API server. If not set, the default endpoint will be used."
|
|
|
|
}
|
|
|
|
|
|
|
|
variable "internal_load_balancer" {
|
|
|
|
type = bool
|
|
|
|
default = false
|
|
|
|
description = "Use an internal load balancer."
|
|
|
|
}
|
2024-04-16 12:13:47 -04:00
|
|
|
|
|
|
|
variable "cc_technology" {
|
|
|
|
type = string
|
|
|
|
description = "The confidential computing technology to use for the nodes. One of `SEV`, `SEV_SNP`."
|
|
|
|
validation {
|
|
|
|
condition = contains(["SEV", "SEV_SNP"], var.cc_technology)
|
|
|
|
error_message = "The confidential computing technology has to be 'SEV' or 'SEV_SNP'."
|
|
|
|
}
|
|
|
|
}
|
2024-04-19 05:07:57 -04:00
|
|
|
|
|
|
|
variable "additional_labels" {
|
|
|
|
type = map(any)
|
|
|
|
description = "Additional labels that should be given to created recources."
|
|
|
|
}
|