terraform-modules/ske/variables.tf
2025-07-16 15:28:03 +02:00

94 lines
No EOL
2.4 KiB
HCL

variable "project_id" {
description = "STACKIT project ID to which the cluster is associated."
type = string
}
variable "name" {
description = "The cluster name."
type = string
}
variable "node_pools" {
description = "One or more node_pool blocks."
type = list(object({
name = string
machine_type = string
availability_zones = list(string)
minimum = number
maximum = number
allow_system_components = optional(bool)
cri = optional(string)
labels = optional(map(string))
max_surge = optional(number)
max_unavailable = optional(number)
os_name = optional(string)
os_version_min = optional(string)
taints = optional(list(object({
effect = string
key = string
value = optional(string)
})))
volume_size = optional(number)
volume_type = optional(string)
}))
}
# Optionale Variablen
variable "kubernetes_version_min" {
description = "The minimum Kubernetes version."
type = string
default = null
}
variable "hibernations" {
description = "A list of hibernation schedules for the cluster."
type = list(object({
start = string
end = string
timezone = optional(string)
}))
default = null
}
variable "maintenance" {
description = "A single maintenance block."
type = object({
enable_kubernetes_version_updates = bool
enable_machine_image_version_updates = bool
start = string
end = string
})
default = null
}
variable "extensions" {
description = "A single extensions block."
type = object({
acl = optional(object({
enabled = bool
allowed_cidrs = list(string)
}))
argus = optional(object({
enabled = bool
argus_instance_id = string
}))
dns = optional(object({
enabled = bool
zones = optional(list(string))
}))
})
default = null
}
variable "network" {
description = "Network block."
type = object({
id = string
})
default = null
}
variable "default_region" {
description = "The resource region."
type = string
default = null
}