Files

71 lines
1.8 KiB
Terraform

variable "hcloud_token" {
description = "Hetzner Cloud API token (Read & Write)."
type = string
sensitive = true
}
variable "hetzner_s3_access_key" {
description = "Hetzner Object Storage access key (created in Cloud Console under Security)."
type = string
sensitive = true
}
variable "hetzner_s3_secret_key" {
description = "Hetzner Object Storage secret key."
type = string
sensitive = true
}
variable "location" {
description = "Hetzner location code."
type = string
default = "nbg1"
}
variable "server_type" {
description = "Hetzner server type."
type = string
default = "cpx42"
}
variable "server_image" {
description = "Hetzner OS image. AlmaLinux 10 — verify the exact slug with `hcloud image list`."
type = string
default = "alma-10"
}
variable "server_name" {
description = "Server hostname."
type = string
default = "watchtower"
}
variable "ssh_public_key" {
description = "SSH public key (ed25519) used for initial root access."
type = string
}
variable "admin_allow_ipv4" {
description = "IPv4 CIDRs allowed to reach SSH (22/tcp) and WireGuard (51820/udp). Use [\"0.0.0.0/0\"] if mobile."
type = list(string)
default = ["0.0.0.0/0"]
}
variable "admin_allow_ipv6" {
description = "IPv6 CIDRs allowed to reach SSH and WireGuard."
type = list(string)
default = ["::/0"]
}
variable "observability_volume_size_gb" {
description = "Size in GB of the Hetzner Volume used for all observability service data (Loki WAL, Tempo WAL, Mimir TSDB, Grafana DB)."
type = number
default = 500
}
variable "bucket_prefix" {
description = "Prefix for the three telemetry buckets."
type = string
default = "watchtower"
}