variable "project_name" { description = "Project name" type = string } variable "environment" { description = "Environment name" type = string } variable "region" { description = "DigitalOcean region" type = string } variable "vpc_uuid" { description = "UUID of the VPC" type = string } variable "vpc_ip_range" { description = "IP range of the VPC (CIDR notation)" type = string } variable "ssh_keys" { description = "List of SSH key IDs to add to the droplet" type = list(string) } variable "droplet_size" { description = "Size slug for the droplet" type = string default = "s-1vcpu-1gb-intel" } variable "droplet_image" { description = "Image slug for the droplet" type = string default = "debian-12-x64" } variable "ssh_port" { description = "System SSH port (non-standard, VPC only)" type = number default = 52913 } variable "git_ssh_port" { description = "Git SSH port (public)" type = number default = 2222 } variable "domain" { description = "Domain name for Forgejo" type = string default = "qbit.realms.pub" } variable "enable_backups" { description = "Enable automated backups" type = bool default = true } variable "tags" { description = "Tags to apply to resources" type = list(string) default = [] } # ============================================================================= # DNS Configuration (optional) # ============================================================================= variable "manage_dns" { description = "Whether to manage DNS record via DigitalOcean" type = bool default = false } variable "dns_zone" { description = "DNS zone (base domain) managed by DigitalOcean (e.g., realms.pub)" type = string default = "" } variable "dns_record_name" { description = "DNS record name (subdomain, e.g., 'qbit' for qbit.realms.pub)" type = string default = "" }