X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fmodules%2Fwebsites%2Fludivine%2Fdefault.nix;h=70d5199f28d92cf700be1d2924e2129d12ad03c6;hb=4aac110f17f0528d90510eec00c9a8df60bcf04f;hp=220f5c2b43657a4c6b36d900c83d4e06d85ee385;hpb=6e23a06b9d5e0bdb21c737285e36dbe76b2d3ac1;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/modules/websites/ludivine/default.nix b/nixops/modules/websites/ludivine/default.nix index 220f5c2..70d5199 100644 --- a/nixops/modules/websites/ludivine/default.nix +++ b/nixops/modules/websites/ludivine/default.nix @@ -1,10 +1,11 @@ -{ lib, pkgs, config, myconfig, mylibs, ... }: +{ lib, pkgs, config, myconfig, ... }: let - ludivinecassal = pkgs.callPackage ./ludivinecassal.nix { inherit (mylibs) fetchedGitPrivate; }; - ludivinecassal_dev = ludivinecassal { + ludivinecassal_dev = pkgs.callPackage ./ludivinecassal.nix { + inherit (pkgs.webapps) ludivinecassal; config = myconfig.env.websites.ludivinecassal.integration; }; - ludivinecassal_prod = ludivinecassal { + ludivinecassal_prod = pkgs.callPackage ./ludivinecassal.nix { + inherit (pkgs.webapps) ludivinecassal; config = myconfig.env.websites.ludivinecassal.production; }; @@ -21,50 +22,41 @@ in { config = lib.mkMerge [ (lib.mkIf cfg.production.enable { - deployment.keys = ludivinecassal_prod.keys; - services.myWebsites.commons.stats.enable = true; - services.myWebsites.commons.stats.sites = [ - { - name = "ludivinecassal.com"; - conf = ./goaccess.conf; - } - ]; - - security.acme.certs."ludivinecassal" = config.services.myCertificates.certConfig // { - domain = "ludivinecassal.com"; - extraDomains = { - "www.ludivinecassal.com" = null; - }; - }; + secrets.keys = ludivinecassal_prod.keys; + services.webstats.sites = [ { name = "ludivinecassal.com"; } ]; + services.myPhpfpm.preStart.ludivinecassal_prod = ludivinecassal_prod.phpFpm.preStart; + services.myPhpfpm.serviceDependencies.ludivinecassal_prod = ludivinecassal_prod.phpFpm.serviceDeps; services.myPhpfpm.poolConfigs.ludivinecassal_prod = ludivinecassal_prod.phpFpm.pool; system.activationScripts.ludivinecassal_prod = ludivinecassal_prod.activationScript; system.extraSystemBuilderCmds = '' mkdir -p $out/webapps - ln -s ${ludivinecassal_prod.webRoot} $out/webapps/${ludivinecassal_prod.apache.webappName} + ln -s ${ludivinecassal_prod.app.webRoot} $out/webapps/${ludivinecassal_prod.apache.webappName} ''; - services.myWebsites.production.modules = ludivinecassal_prod.apache.modules; - services.myWebsites.production.vhostConfs.ludivine = { - certName = "ludivinecassal"; - hosts = ["ludivinecassal.com" "www.ludivinecassal.com" ]; - root = ludivinecassal_prod.apache.root; - extraConfig = [ ludivinecassal_prod.apache.vhostConf ]; + services.websites.production.modules = ludivinecassal_prod.apache.modules; + services.websites.production.vhostConfs.ludivine = { + certName = "ludivinecassal"; + certMainHost = "ludivinecassal.com"; + hosts = ["ludivinecassal.com" "www.ludivinecassal.com" ]; + root = ludivinecassal_prod.apache.root; + extraConfig = [ ludivinecassal_prod.apache.vhostConf ]; }; }) (lib.mkIf cfg.integration.enable { - deployment.keys = ludivinecassal_dev.keys; - security.acme.certs."eldiron".extraDomains."ludivine.immae.eu" = null; + secrets.keys = ludivinecassal_dev.keys; + services.myPhpfpm.preStart.ludivinecassal_dev = ludivinecassal_dev.phpFpm.preStart; + services.myPhpfpm.serviceDependencies.ludivinecassal_dev = ludivinecassal_dev.phpFpm.serviceDeps; services.myPhpfpm.poolConfigs.ludivinecassal_dev = ludivinecassal_dev.phpFpm.pool; system.activationScripts.ludivinecassal_dev = ludivinecassal_dev.activationScript; system.extraSystemBuilderCmds = '' mkdir -p $out/webapps - ln -s ${ludivinecassal_dev.webRoot} $out/webapps/${ludivinecassal_dev.apache.webappName} + ln -s ${ludivinecassal_dev.app.webRoot} $out/webapps/${ludivinecassal_dev.apache.webappName} ''; - services.myWebsites.apacheConfig.ludivinecassal_dev.modules = ludivinecassal_dev.apache.modules; - services.myWebsites.integration.modules = ludivinecassal_dev.apache.modules; - services.myWebsites.integration.vhostConfs.ludivine = { + services.websites.integration.modules = ludivinecassal_dev.apache.modules; + services.websites.integration.vhostConfs.ludivine = { certName = "eldiron"; + addToCerts = true; hosts = [ "ludivine.immae.eu" ]; root = ludivinecassal_dev.apache.root; extraConfig = [ ludivinecassal_dev.apache.vhostConf ];