mirror of
https://github.com/Stunkymonkey/nixos.git
synced 2025-05-24 09:54:40 +02:00
service/webserver: assert for duplicate ports
This commit is contained in:
parent
b6b9972d60
commit
0e41a02722
1 changed files with 18 additions and 0 deletions
|
@ -91,6 +91,24 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
|
assertions = [
|
||||||
|
{
|
||||||
|
assertion = lib.allUnique (builtins.filter (p: p != null) (map (v: v.port) cfg.virtualHosts));
|
||||||
|
message =
|
||||||
|
let
|
||||||
|
portsWithSubdomains = builtins.filter (v: v.port != null) cfg.virtualHosts;
|
||||||
|
duplicates = lib.filter (
|
||||||
|
p: builtins.length (lib.filter (x: x.port == p.port) portsWithSubdomains) > 1
|
||||||
|
) portsWithSubdomains;
|
||||||
|
in
|
||||||
|
if duplicates == [ ] then
|
||||||
|
""
|
||||||
|
else
|
||||||
|
"Duplicate ports found in my.services.webserver.virtualHosts: "
|
||||||
|
+ builtins.concatStringsSep ", " (map (v: v.subdomain + ":" + builtins.toString v.port) duplicates);
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
nginx.enable = false;
|
nginx.enable = false;
|
||||||
caddy = {
|
caddy = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue