X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fmodules%2Fwebsites%2Fpiedsjaloux%2Fdefault.nix;h=6ffb19c034547ca6d7cf78aa2f701a780b0e0f60;hb=daf64e3f7de98e4267823d14fa34891b27b5f657;hp=f1bb76039b3c74791ba2f4f88097a72a31614c91;hpb=01f21083a897b86bf148f1d2bb9c8edca4d3786a;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/modules/websites/piedsjaloux/default.nix b/nixops/modules/websites/piedsjaloux/default.nix index f1bb760..6ffb19c 100644 --- a/nixops/modules/websites/piedsjaloux/default.nix +++ b/nixops/modules/websites/piedsjaloux/default.nix @@ -1,14 +1,15 @@ -{ lib, pkgs, config, myconfig, mylibs, ... }: +{ lib, pkgs, config, myconfig, ... }: let - piedsjaloux = pkgs.callPackage ./piedsjaloux.nix { inherit (mylibs) fetchedGitPrivate; }; - piedsjaloux_dev = piedsjaloux { - config = myconfig.env.websites.piedsjaloux.integration; - }; - piedsjaloux_prod = piedsjaloux { - config = myconfig.env.websites.piedsjaloux.production; - }; + piedsjaloux_dev = pkgs.callPackage ./piedsjaloux.nix { + inherit (pkgs.webapps) piedsjaloux; + config = myconfig.env.websites.piedsjaloux.integration; + }; + piedsjaloux_prod = pkgs.callPackage ./piedsjaloux.nix { + inherit (pkgs.webapps) piedsjaloux; + config = myconfig.env.websites.piedsjaloux.production; + }; - cfg = config.services.myWebsites.PiedsJaloux; + cfg = config.services.myWebsites.PiedsJaloux; in { options.services.myWebsites.PiedsJaloux = { production = { @@ -19,19 +20,10 @@ in { }; }; - imports = [ - ../commons/stats.nix - ]; - config = lib.mkMerge [ (lib.mkIf cfg.production.enable { - services.myWebsites.commons.stats.enable = true; - services.myWebsites.commons.stats.sites = [ - { - name = "piedsjaloux.fr"; - conf = ./goaccess.conf; - } - ]; + secrets.keys = piedsjaloux_prod.keys; + services.webstats.sites = [ { name = "piedsjaloux.fr"; } ]; security.acme.certs."piedsjaloux" = config.services.myCertificates.certConfig // { domain = "piedsjaloux.fr"; @@ -40,25 +32,38 @@ in { }; }; + services.myPhpfpm.preStart.piedsjaloux_prod = piedsjaloux_prod.phpFpm.preStart; + services.myPhpfpm.serviceDependencies.piedsjaloux_prod = piedsjaloux_prod.phpFpm.serviceDeps; services.myPhpfpm.poolConfigs.piedsjaloux_prod = piedsjaloux_prod.phpFpm.pool; system.activationScripts.piedsjaloux_prod = piedsjaloux_prod.activationScript; - services.myWebsites.production.modules = piedsjaloux_prod.apache.modules; - services.myWebsites.production.vhostConfs.piedsjaloux = { + system.extraSystemBuilderCmds = '' + mkdir -p $out/webapps + ln -s ${piedsjaloux_prod.app.webRoot} $out/webapps/${piedsjaloux_prod.apache.webappName} + ''; + services.websites.production.modules = piedsjaloux_prod.apache.modules; + services.websites.production.vhostConfs.piedsjaloux = { certName = "piedsjaloux"; hosts = [ "piedsjaloux.fr" "www.piedsjaloux.fr" ]; - root = piedsjaloux_prod.webRoot; + root = piedsjaloux_prod.apache.root; extraConfig = [ piedsjaloux_prod.apache.vhostConf ]; }; }) (lib.mkIf cfg.integration.enable { + secrets.keys = piedsjaloux_dev.keys; security.acme.certs."eldiron".extraDomains."piedsjaloux.immae.eu" = null; + services.myPhpfpm.preStart.piedsjaloux_dev = piedsjaloux_dev.phpFpm.preStart; + services.myPhpfpm.serviceDependencies.piedsjaloux_dev = piedsjaloux_dev.phpFpm.serviceDeps; services.myPhpfpm.poolConfigs.piedsjaloux_dev = piedsjaloux_dev.phpFpm.pool; system.activationScripts.piedsjaloux_dev = piedsjaloux_dev.activationScript; - services.myWebsites.integration.modules = piedsjaloux_dev.apache.modules; - services.myWebsites.integration.vhostConfs.piedsjaloux = { + system.extraSystemBuilderCmds = '' + mkdir -p $out/webapps + ln -s ${piedsjaloux_dev.app.webRoot} $out/webapps/${piedsjaloux_dev.apache.webappName} + ''; + services.websites.integration.modules = piedsjaloux_dev.apache.modules; + services.websites.integration.vhostConfs.piedsjaloux = { certName = "eldiron"; hosts = [ "piedsjaloux.immae.eu" ]; - root = piedsjaloux_dev.webRoot; + root = piedsjaloux_dev.apache.root; extraConfig = [ piedsjaloux_dev.apache.vhostConf ]; }; })