# ──────────────────────────────────────────────────────────────
# Quark's Holo-Grid Ledger — Input variables
# ──────────────────────────────────────────────────────────────

variable "hcloud_token" {
  description = "Hetzner Cloud API token (read/write)"
  type        = string
  sensitive   = true
}

variable "ssh_public_key" {
  description = "SSH public key for the deploy user (e.g. ssh-ed25519 AAAA...)"
  type        = string
}

variable "domain" {
  description = "Base domain for the application stack (e.g. hologrid.example.com)"
  type        = string
}

variable "forgejo_domain" {
  description = "Domain for the Forgejo instance (e.g. forgejo.example.com)"
  type        = string
}

variable "location" {
  description = "Hetzner datacenter location"
  type        = string
  default     = "nbg1"
}

variable "forgejo_server_type" {
  description = "Server type for the Forgejo + CI/CD server"
  type        = string
  default     = "cx23"
}

variable "app_server_type" {
  description = "Server type for the production application server"
  type        = string
  default     = "cx23"
}

variable "volume_size" {
  description = "Persistent volume size in GB (for Valkey data)"
  type        = number
  default     = 20
}

variable "environment" {
  description = "Deployment environment label (e.g. production, staging)"
  type        = string
  default     = "production"
}
