From f8d3b61afcde127404a01027afce9c31a22d5706 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Isma=C3=ABl=20Bouya?= Date: Tue, 22 Jan 2019 09:57:40 +0100 Subject: [PATCH] Merge common functions in websites --- virtual/modules/websites/default.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/virtual/modules/websites/default.nix b/virtual/modules/websites/default.nix index cfd1f86..f2f0be1 100644 --- a/virtual/modules/websites/default.nix +++ b/virtual/modules/websites/default.nix @@ -83,6 +83,8 @@ let }); }; }; + makeModules = cfg: pkgs.lib.lists.flatten (pkgs.lib.attrsets.mapAttrsToList (n: v: v.modules or []) cfg.apacheConfig); + makeExtraConfig = cfg: (builtins.filter (x: x != null) (pkgs.lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) cfg.apacheConfig)); in { imports = [ @@ -283,16 +285,16 @@ in }; services.httpdProd = makeService "production" config.services.myWebsites.production; - services.myWebsites.production.modules = pkgs.lib.lists.flatten (pkgs.lib.attrsets.mapAttrsToList (n: v: v.modules or []) cfg.apacheConfig); - services.myWebsites.production.extraConfig = (builtins.filter (x: x != null) (pkgs.lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) cfg.apacheConfig)); + services.myWebsites.production.modules = makeModules cfg; + services.myWebsites.production.extraConfig = makeExtraConfig cfg; services.httpdInte = makeService "integration" config.services.myWebsites.integration; - services.myWebsites.integration.modules = pkgs.lib.lists.flatten (pkgs.lib.attrsets.mapAttrsToList (n: v: v.modules or []) cfg.apacheConfig); - services.myWebsites.integration.extraConfig = (builtins.filter (x: x != null) (pkgs.lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) cfg.apacheConfig)); + services.myWebsites.integration.modules = makeModules cfg; + services.myWebsites.integration.extraConfig = makeExtraConfig cfg; services.httpdTools = makeService "tools" config.services.myWebsites.tools; - services.myWebsites.tools.modules = pkgs.lib.lists.flatten (pkgs.lib.attrsets.mapAttrsToList (n: v: v.modules or []) cfg.apacheConfig); - services.myWebsites.tools.extraConfig = (builtins.filter (x: x != null) (pkgs.lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) cfg.apacheConfig)) ++ + services.myWebsites.tools.modules = makeModules cfg; + services.myWebsites.tools.extraConfig = makeExtraConfig cfg ++ [ '' RedirectMatch ^/licen[cs]es?_et_tip(ping)?$ https://www.immae.eu/licences_et_tip.html RedirectMatch ^/licen[cs]es?_and_tip(ping)?$ https://www.immae.eu/licenses_and_tipping.html -- 2.41.0