feat(keepalived): init keepalived for pihole

This commit is contained in:
2025-09-14 08:27:13 +02:00
parent 7167ddc06d
commit 438d847d11
6 changed files with 145 additions and 108 deletions

View File

@@ -1,118 +1,58 @@
let
# --- Users ---
cnst = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEUub8vbzUn2f39ILhAJ2QeH8xxLSjiyUuo8xvHGx/VB adam@cnst.dev";
kima = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJjoPdpiF8pjKN3ZEHeLEwVxoqwcCdzpVVlZkxJohFdg root@cnix";
# --- Hosts: sobotka ---
usobotka = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG5ydTeaWcowmNXdDNqIa/lb5l9w5CAzyF2Kg6U5PSSu cnst@sobotka";
rsobotka = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJWLTYWowtpGmGolmkCE7+l9jr5QEnDqRxoezNqAIe+j root@nixos";
# --- Hosts: ziggy ---
uziggy = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICtL8uBsJ3UL4+scqjEcyXYQOVlKziJk9YJ78YP6jCxq cnst@nixos";
rziggy = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHnca8xg1MZ4Hx5k5SVFSxcPnWc1O6r7w7JGYzX9aQm8 root@nixos";
# --- Groups ---
core = [
cnst
kima
];
sobotka = [
usobotka
rsobotka
];
ziggy = [
uziggy
rziggy
];
all = core ++ sobotka ++ ziggy;
in
{
"cnstssh.age".publicKeys = [
cnst
kima
];
"cnixssh.age".publicKeys = [
cnst
kima
];
"certpem.age".publicKeys = [
cnst
kima
];
"keypem.age".publicKeys = [
cnst
kima
];
"mailpwd.age".publicKeys = [
cnst
kima
];
"gcapi.age".publicKeys = [
cnst
kima
];
"cloudflareEnvironment.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"vaultwardenEnvironment.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"homepageEnvironment.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"cloudflareFirewallApiKey.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"vaultwardenCloudflared.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"cloudflareDnsApiToken.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"cloudflareDnsCredentials.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"cloudflareDnsCredentialsZiggy.age".publicKeys = [
cnst
kima
uziggy
rziggy
];
"wgCredentials.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"wgSobotkaPrivateKey.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"gluetunEnvironment.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"pihole.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
"piholeZiggy.age".publicKeys = [
cnst
kima
uziggy
rziggy
];
"slskd.age".publicKeys = [
cnst
kima
usobotka
rsobotka
];
# Generic
"cnstssh.age".publicKeys = core;
"cnixssh.age".publicKeys = core;
"certpem.age".publicKeys = core;
"keypem.age".publicKeys = core;
"mailpwd.age".publicKeys = core;
"gcapi.age".publicKeys = core;
# Shared between core + sobotka
"cloudflareEnvironment.age".publicKeys = core ++ sobotka;
"vaultwardenEnvironment.age".publicKeys = core ++ sobotka;
"homepageEnvironment.age".publicKeys = core ++ sobotka;
"cloudflareFirewallApiKey.age".publicKeys = core ++ sobotka;
"vaultwardenCloudflared.age".publicKeys = core ++ sobotka;
"cloudflareDnsApiToken.age".publicKeys = core ++ sobotka;
"cloudflareDnsCredentials.age".publicKeys = core ++ sobotka;
"wgCredentials.age".publicKeys = core ++ sobotka;
"wgSobotkaPrivateKey.age".publicKeys = core ++ sobotka;
"gluetunEnvironment.age".publicKeys = core ++ sobotka;
"pihole.age".publicKeys = core ++ sobotka;
"slskd.age".publicKeys = core ++ sobotka;
# Ziggy-specific
"cloudflareDnsCredentialsZiggy.age".publicKeys = core ++ ziggy;
"piholeZiggy.age".publicKeys = core ++ ziggy;
# Both sobotka + ziggy (for HA stuff like keepalived)
"keepalived.age".publicKeys = core ++ sobotka ++ ziggy;
}