35 lines
765 B
Nix
35 lines
765 B
Nix
{ config , ... }:
|
|
let
|
|
|
|
get = element: object:
|
|
"\${ ${object."_ref"}.${element} }";
|
|
|
|
getVariable = name:
|
|
"\${ var.${name} }";
|
|
|
|
in {
|
|
|
|
hcloud = {
|
|
enable = true;
|
|
|
|
resource.server."tinc_node" = {
|
|
name = "tinc-node-nurnberg";
|
|
image = "ubuntu-18.04";
|
|
server_type = "cx11";
|
|
backups = false;
|
|
# datacenter = "nbg1-dc3";
|
|
location = "nbg1";
|
|
labels = {
|
|
system = "nixos";
|
|
};
|
|
};
|
|
};
|
|
|
|
output = {
|
|
"${config.hcloud.resource.server."tinc_node".name}-ip4_address".value =
|
|
get "ipv4_address" config.hcloud.resource.server."tinc_node";
|
|
"${config.hcloud.resource.server."tinc_node".name}-ip6_address".value =
|
|
get "ipv6_address" config.hcloud.resource.server."tinc_node";
|
|
};
|
|
|
|
}
|