re-generate ssh certificates when machine name or domains changes
This commit is contained in:
@@ -7,10 +7,12 @@
|
|||||||
let
|
let
|
||||||
stringSet = list: builtins.attrNames (builtins.groupBy lib.id list);
|
stringSet = list: builtins.attrNames (builtins.groupBy lib.id list);
|
||||||
|
|
||||||
|
domains = stringSet config.clan.sshd.certificate.searchDomains;
|
||||||
|
|
||||||
signArgs = builtins.concatStringsSep " " (
|
signArgs = builtins.concatStringsSep " " (
|
||||||
builtins.map (domain: "-n ${lib.escapeShellArg "${config.clan.core.machineName}.${domain}"}") (
|
builtins.map (
|
||||||
stringSet config.clan.sshd.certificate.searchDomains
|
domain: "-n ${lib.escapeShellArg "${config.clan.core.machineName}.${domain}"}"
|
||||||
)
|
) domains
|
||||||
);
|
);
|
||||||
cfg = config.clan.sshd;
|
cfg = config.clan.sshd;
|
||||||
in
|
in
|
||||||
@@ -51,6 +53,10 @@ in
|
|||||||
"openssh"
|
"openssh"
|
||||||
"openssh-ca"
|
"openssh-ca"
|
||||||
];
|
];
|
||||||
|
validation = {
|
||||||
|
name = config.clan.core.machineName;
|
||||||
|
domains = lib.genAttrs config.clan.sshd.certificate.searchDomains lib.id;
|
||||||
|
};
|
||||||
runtimeInputs = [
|
runtimeInputs = [
|
||||||
pkgs.openssh
|
pkgs.openssh
|
||||||
pkgs.jq
|
pkgs.jq
|
||||||
|
|||||||
Reference in New Issue
Block a user