Files
server/infra/servers.tf
T

44 lines
1.2 KiB
Terraform

# dev: Gitea + Runner + TraefikRunner (git.luke-else.co.uk, cicd.luke-else.co.uk)
resource "hcloud_server" "dev" {
name = "dev"
server_type = var.dev_server_type
image = var.server_image
location = var.location
ssh_keys = [data.hcloud_ssh_key.main.id]
firewall_ids = [hcloud_firewall.dev.id]
network {
network_id = hcloud_network.main.id
ip = var.dev_private_ip
}
depends_on = [hcloud_network_subnet.main]
}
# prod: Traefik, Websites, Database, Bitwarden, Misc, Tracking, Rustdesk
resource "hcloud_server" "prod" {
name = "prod"
server_type = var.prod_server_type
image = var.server_image
location = var.location
ssh_keys = [data.hcloud_ssh_key.main.id]
firewall_ids = [hcloud_firewall.prod.id]
network {
network_id = hcloud_network.main.id
ip = var.prod_private_ip
}
depends_on = [hcloud_network_subnet.main]
}
# vpn: OpenVPN + TraefikVPN. Not attached to the private network (see architecture.md).
resource "hcloud_server" "vpn" {
name = "vpn"
server_type = var.vpn_server_type
image = var.server_image
location = var.location
ssh_keys = [data.hcloud_ssh_key.main.id]
firewall_ids = [hcloud_firewall.vpn.id]
}