From 490b30f4368e54568eded83d2fa426339812fa53 Mon Sep 17 00:00:00 2001 From: = <=> Date: Tue, 4 Feb 2025 21:23:58 +0100 Subject: [PATCH] File with parameters. Hosts, domains, more in the future --- hosts/authentik/default.nix | 5 +++- hosts/caddy/default.nix | 53 +++++++++++++++++-------------------- hosts/deployments.nix | 3 ++- hosts/hosts.nix | 11 -------- hosts/parameters.nix | 17 ++++++++++++ 5 files changed, 47 insertions(+), 42 deletions(-) delete mode 100644 hosts/hosts.nix create mode 100644 hosts/parameters.nix diff --git a/hosts/authentik/default.nix b/hosts/authentik/default.nix index 22475b5..9f64ff0 100644 --- a/hosts/authentik/default.nix +++ b/hosts/authentik/default.nix @@ -5,6 +5,9 @@ imports, ... }: +let + p = import ../parameters.nix; +in { age.secrets.authentik-env.file = ../../secrets/authentik-env.age; @@ -26,7 +29,7 @@ use_ssl = false; from = "auth@pazpi.top"; }; - proxy.domain = "tegola.pro"; + proxy.domain = p.domains.public; }; virtualisation.proxmox.enable = true; }; diff --git a/hosts/caddy/default.nix b/hosts/caddy/default.nix index bf62d54..a5b57ad 100644 --- a/hosts/caddy/default.nix +++ b/hosts/caddy/default.nix @@ -7,10 +7,8 @@ }: let tailscaleMagicDNS = "neon-dory.ts.net"; - publicDomain = "pasetto.me"; - tsDomain = "tegola.pro"; email = "pasettodavide@gmail.com"; - hosts = import ../hosts.nix; + p = import ../parameters.nix; in { @@ -41,13 +39,10 @@ in services = { - authentik = { + authentik.proxy = { enable = true; - proxy = { - enable = true; - domain = tsDomain; - host = hosts.authentik; - }; + domain = p.domains.public; + host = p.hosts.authentik; }; dashy = { @@ -55,24 +50,24 @@ in settings = import ./dashy-settings.nix; proxy = { enable = true; - domain = publicDomain; - host = hosts.caddy; + domain = p.domains.public; + host = p.hosts.caddy; }; }; media-mgr = { proxy = { enable = true; - domain = tsDomain; - host = hosts.arr; + domain = p.domains.ts; + host = p.hosts.arr; }; }; nextcloud = { proxy = { enable = true; - domain = publicDomain; - host = hosts.nextcloud; + domain = p.domains.public; + host = p.hosts.nextcloud; }; }; @@ -80,19 +75,19 @@ in enable = true; secretFile = config.age.secrets.searx-secret.path; enableAI = true; - perplexicaUrl = hosts.portainer; + perplexicaUrl = p.hosts.portainer; proxy = { enable = true; - domain = tsDomain; - host = hosts.caddy; + domain = p.domains.ts; + host = p.hosts.caddy; }; }; vaultwarden = { proxy = { enable = true; - domain = publicDomain; - host = hosts.vaultwarden; + domain = p.domains.public; + host = p.hosts.vaultwarden; }; }; @@ -102,16 +97,16 @@ in prometheus = { proxy = { enable = true; - domain = tsDomain; - host = hosts.metrics; + domain = p.domains.ts; + host = p.hosts.metrics; }; }; grafana = { proxy = { enable = true; - domain = tsDomain; - host = hosts.metrics; + domain = p.domains.ts; + host = p.hosts.metrics; }; }; }; @@ -128,19 +123,19 @@ in configEnvFile = config.age.secrets.cloudflare-pasetto-apiKey.path; domainsList = [ { - domain = tsDomain; + domain = p.domains.ts; email = email; cloudflareApiKeyFile = config.age.secrets.cloudflare-tegola-apiKey.path; } { - domain = publicDomain; + domain = p.domains.public; email = email; cloudflareApiKeyFile = config.age.secrets.cloudflare-pasetto-apiKey.path; } ]; dynamicdnsDomains = [ { - domain = publicDomain; + domain = p.domains.public; cloudflareApiEnvName = "CLOUDFLARE_API_TOKEN"; } ]; @@ -149,7 +144,7 @@ in { subdomain = "h"; host = "http://ha.internal:8123"; - domain = publicDomain; + domain = p.domains.public; } ]; @@ -166,7 +161,7 @@ in proxmox.enable = true; portainer.proxy = { enable = true; - domain = tsDomain; + domain = p.domains.ts; host = "portainer.internal"; }; }; diff --git a/hosts/deployments.nix b/hosts/deployments.nix index 14a2983..c4cc38b 100644 --- a/hosts/deployments.nix +++ b/hosts/deployments.nix @@ -1,6 +1,7 @@ { inputs, ... }: let - hosts = import ./hosts.nix; + p = import ./parameters.nix; + hosts = p.hosts; in { meta = { diff --git a/hosts/hosts.nix b/hosts/hosts.nix deleted file mode 100644 index 2caf93d..0000000 --- a/hosts/hosts.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ - authentik = "auth.internal"; - arr = "arr.internal"; - caddy = "caddy.internal"; - metrics = "metrics.internal"; - nextcloud = "nextcloud.internal"; - vaultwarden = "vaultwarden.internal"; - plex = "plex.internal"; - portainer = "portainer.internal"; - colmena = "colmena.internal"; -} diff --git a/hosts/parameters.nix b/hosts/parameters.nix new file mode 100644 index 0000000..d9c2fbb --- /dev/null +++ b/hosts/parameters.nix @@ -0,0 +1,17 @@ +{ + hosts = { + authentik = "auth.internal"; + arr = "arr.internal"; + caddy = "caddy.internal"; + metrics = "metrics.internal"; + nextcloud = "nextcloud.internal"; + vaultwarden = "vaultwarden.internal"; + plex = "plex.internal"; + portainer = "portainer.internal"; + colmena = "colmena.internal"; + }; + domains = { + public = "pasetto.me"; + ts = "tegola.pro"; + }; +}