mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-03-22 17:49:07 +01:00
caddy: Ensure acme certs before start
This commit is contained in:
parent
fa06bbe9ce
commit
b554146792
1 changed files with 12 additions and 6 deletions
|
|
@ -13,6 +13,12 @@ let
|
||||||
publicHostsExist = virtualHosts |> lib.any (vHost: (!self.lib.isPrivateDomain vHost.domain));
|
publicHostsExist = virtualHosts |> lib.any (vHost: (!self.lib.isPrivateDomain vHost.domain));
|
||||||
privateHostsExist = virtualHosts |> lib.any (vHost: self.lib.isPrivateDomain vHost.domain);
|
privateHostsExist = virtualHosts |> lib.any (vHost: self.lib.isPrivateDomain vHost.domain);
|
||||||
|
|
||||||
|
privateDomains =
|
||||||
|
virtualHosts
|
||||||
|
|> lib.filter (vHost: self.lib.isPrivateDomain vHost.domain)
|
||||||
|
|> lib.map (vHost: vHost.domain)
|
||||||
|
|> lib.unique;
|
||||||
|
|
||||||
mkVirtualHost =
|
mkVirtualHost =
|
||||||
{
|
{
|
||||||
domain,
|
domain,
|
||||||
|
|
@ -138,11 +144,7 @@ in
|
||||||
reloadServices = [ "caddy.service" ];
|
reloadServices = [ "caddy.service" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
certs =
|
certs = privateDomains |> lib.map (domain: lib.nameValuePair domain { }) |> lib.listToAttrs;
|
||||||
virtualHosts
|
|
||||||
|> lib.filter (host: self.lib.isPrivateDomain host.domain)
|
|
||||||
|> lib.map (host: lib.nameValuePair host.domain { })
|
|
||||||
|> lib.listToAttrs;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nebula.networks.mesh.firewall.inbound = [
|
services.nebula.networks.mesh.firewall.inbound = [
|
||||||
|
|
@ -160,7 +162,11 @@ in
|
||||||
|
|
||||||
systemd.services.caddy = {
|
systemd.services.caddy = {
|
||||||
requires = [ netCfg.overlay.systemdUnit ];
|
requires = [ netCfg.overlay.systemdUnit ];
|
||||||
after = [ netCfg.overlay.systemdUnit ];
|
wants = privateDomains |> lib.map (domain: "acme-${domain}.service");
|
||||||
|
after = [
|
||||||
|
netCfg.overlay.systemdUnit
|
||||||
|
]
|
||||||
|
++ (privateDomains |> lib.map (domain: "acme-${domain}.service"));
|
||||||
};
|
};
|
||||||
|
|
||||||
custom.persistence.directories = [ "/var/lib/acme" ];
|
custom.persistence.directories = [ "/var/lib/acme" ];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue