variable "server_type" { description = "Server type for vpn (OpenVPN + Traefik)." type = string } variable "image" { description = "OS image used for the server." type = string } variable "location" { description = "Hetzner Cloud datacenter location." type = string } variable "ssh_key_ids" { description = "IDs of the Hetzner Cloud SSH keys to install on the server." type = list(string) } variable "allowed_ssh_source_ips" { description = "CIDRs allowed to reach port 22 on vpn." type = list(string) } variable "bootstrap_script" { description = "Rendered post-install script, uploaded and executed on the server immediately after creation." type = string } variable "ssh_private_key_path" { description = "Local path to the private key matching one of var.ssh_key_ids, used to run the bootstrap script over SSH." type = string } variable "deploy_user" { description = "Non-root sudo user created by the bootstrap script - services/vpn is copied into this user's home directory." type = string }