mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-01-31 10:58:02 +00:00
41 lines
904 B
HCL
41 lines
904 B
HCL
variable "ssh_keys" {
|
|
type = list(number)
|
|
description = "SSH keys for the associated server"
|
|
}
|
|
|
|
resource "hcloud_server" "plover" {
|
|
name = "plover"
|
|
image = "ubuntu-24.04"
|
|
server_type = "cx22"
|
|
datacenter = "hel1-dc2"
|
|
|
|
ssh_keys = concat(var.ssh_keys[*], [
|
|
hcloud_ssh_key.plover.id
|
|
])
|
|
|
|
delete_protection = false
|
|
rebuild_protection = false
|
|
|
|
public_net {
|
|
ipv4_enabled = true
|
|
ipv6_enabled = true
|
|
}
|
|
}
|
|
|
|
resource "hcloud_ssh_key" "plover" {
|
|
name = "plover.foodogsquared.one"
|
|
public_key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGo3tfNQjWZ5pxlqREfBgQJxdNzGHKJIy5hDS9Z+Hpth plover.foodogsquared.one"
|
|
}
|
|
|
|
resource "local_file" "network_file" {
|
|
content = jsonencode({
|
|
interfaces = {
|
|
wan = {
|
|
ipv4 = hcloud_server.plover.ipv4_address
|
|
ipv6 = hcloud_server.plover.ipv6_address
|
|
}
|
|
}
|
|
})
|
|
filename = "${path.module}/network.json"
|
|
}
|