my-homelab-configs/bootstrap/edge/variables.tf

111 lines
2.2 KiB
HCL

variable "edge_host" {
type = string
default = ""
validation {
condition = var.edge_host != ""
error_message = "edge_host must be provided from homelab.yml through jeannie or an explicit tfvars/env value."
}
}
variable "edge_user" {
type = string
default = "ubuntu"
}
variable "edge_ssh_key_path" {
type = string
default = "/home/jv/.ssh/id_ed25519"
}
variable "edge_install_dir" {
type = string
default = "/opt/homelab-edge"
}
variable "edge_install_docker" {
type = bool
default = false
}
variable "server_name" {
type = string
default = ""
validation {
condition = var.server_name != ""
error_message = "server_name must be provided from homelab.yml through jeannie or an explicit tfvars/env value."
}
}
variable "additional_server_names" {
type = list(string)
default = []
}
variable "enable_letsencrypt" {
type = bool
default = true
}
variable "letsencrypt_email" {
type = string
default = ""
}
variable "letsencrypt_staging" {
type = bool
default = false
}
variable "backend_host" {
type = string
default = ""
validation {
condition = var.backend_host != ""
error_message = "backend_host must be provided from homelab.yml through jeannie or an explicit tfvars/env value."
}
}
variable "backend_port" {
type = number
default = 80
}
variable "demos_backend_port" {
type = number
default = 30081
}
variable "gitea_backend_port" {
type = number
default = 3000
}
variable "gitea_backend_host" {
type = string
default = ""
validation {
condition = var.gitea_backend_host != ""
error_message = "gitea_backend_host must be provided from homelab.yml through jeannie or an explicit tfvars/env value."
}
}
variable "haproxy_stats_user" {
type = string
default = "admin"
}
variable "haproxy_stats_password" {
type = string
sensitive = true
default = ""
validation {
condition = length(var.haproxy_stats_password) >= 12 && var.haproxy_stats_password != "adminpassword"
error_message = "haproxy_stats_password must be set explicitly to a non-default value with at least 12 characters."
}
}