mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-01-31 16:57:55 +00:00
77 lines
1.5 KiB
HCL
77 lines
1.5 KiB
HCL
variable "hcloud_token" {
|
|
sensitive = true
|
|
}
|
|
|
|
variable "hcloud_dns_token" {
|
|
sensitive = true
|
|
}
|
|
|
|
provider "hcloud" {
|
|
token = var.hcloud_token
|
|
}
|
|
|
|
provider "hetznerdns" {
|
|
apitoken = var.hcloud_dns_token
|
|
}
|
|
|
|
resource "hetznerdns_zone" "main" {
|
|
name = "foodogsquared.one"
|
|
ttl = 3600
|
|
}
|
|
|
|
resource "hetznerdns_primary_server" "main" {
|
|
address = hcloud_server.plover.ipv4_address
|
|
port = 53
|
|
zone_id = hetznerdns_zone.main.id
|
|
}
|
|
|
|
resource "hetznerdns_primary_server" "main_ipv6" {
|
|
address = hcloud_server.plover.ipv6_address
|
|
port = 53
|
|
zone_id = hetznerdns_zone.main.id
|
|
}
|
|
|
|
resource "hcloud_server" "plover" {
|
|
name = "plover"
|
|
image = "debian-12"
|
|
server_type = "cx22"
|
|
datacenter = "hel1-dc2"
|
|
|
|
ssh_keys = [hcloud_ssh_key.foodogsquared.id]
|
|
|
|
delete_protection = true
|
|
rebuild_protection = true
|
|
|
|
public_net {
|
|
ipv4_enabled = true
|
|
ipv6_enabled = true
|
|
}
|
|
|
|
network {
|
|
network_id = hcloud_network.plover.id
|
|
ip = "10.0.0.2"
|
|
}
|
|
|
|
depends_on = [
|
|
hcloud_network_subnet.plover-subnet
|
|
]
|
|
}
|
|
|
|
resource "hcloud_ssh_key" "foodogsquared" {
|
|
name = "foodogsquared@foodogsquared.one"
|
|
public_key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILPR52KfVODfKsgdvYSoQinV3kyOTZ4mtKa0fah5Wkfr foodogsquared@foodogsquared.one"
|
|
}
|
|
|
|
resource "hcloud_network" "plover" {
|
|
name = "plover"
|
|
ip_range = "10.0.0.0/8"
|
|
delete_protection = true
|
|
}
|
|
|
|
resource "hcloud_network_subnet" "plover-subnet" {
|
|
network_id = hcloud_network.plover.id
|
|
type = "cloud"
|
|
network_zone = "eu-central"
|
|
ip_range = "10.0.0.0/12"
|
|
}
|