]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - virtual/eldiron.nix
Add Chloe production and stats
[perso/Immae/Config/Nix.git] / virtual / eldiron.nix
index 3f2ba27886f188a9712cdacdced60c79789ce7ba..2e1e68db35d885703236326d88cdb9a450c55da4 100644 (file)
       occ
     ];
 
+    # FIXME: doesn't work with httpd?
+    security.acme.preliminarySelfsigned = true;
     security.acme.certs = {
-      # /!\ To create a new certificate, add first the domain to an
-      # existing certificate, deploy, and then use it in httpd.
+      # FIXME: /!\ To create a new certificate, create it before using
+      # it in httpd
       "eldiron" = {
         webroot = "/var/lib/acme/acme-challenge";
         email = "ismael@bouya.org";
           "www.piedsjaloux.fr" = null;
         };
       };
+      "chloe" = {
+        webroot = "/var/lib/acme/acme-challenge";
+        email = "ismael@bouya.org";
+        domain = "osteopathe-cc.fr";
+        plugins = [ "cert.pem" "chain.pem" "fullchain.pem" "full.pem" "key.pem" "account_key.json" ];
+        postRun = ''
+          systemctl reload httpd.service
+        '';
+        extraDomains = {
+          "www.osteopathe-cc.fr" = null;
+        };
+      };
       # "connexionswing" = {
       #   webroot = "/var/lib/acme/acme-challenge";
       #   email = "ismael@bouya.org";
           fi
         '';
       };
+      # FIXME: initial sync
       goaccess = ''
         mkdir -p /var/lib/goaccess
         mkdir -p /var/lib/goaccess/aten.pro
         mkdir -p /var/lib/goaccess/ludivinecassal.com
         mkdir -p /var/lib/goaccess/piedsjaloux.fr
+        mkdir -p /var/lib/goaccess/osteopathe-cc.fr
         '';
     };
 
             mypkgs.chloe_dev.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
+        (withConf "chloe" // {
           hostName = "osteopathe-cc.fr";
           serverAliases = [ "www.osteopathe-cc.fr" ];
           documentRoot = mypkgs.chloe_prod.webRoot;
     services.cron = {
       enable = true;
       systemCronJobs = let
-        stats = domain: conf: "${pkgs.gnused}/bin/sed -n '/\\['$(LC_ALL=C ${pkgs.coreutils}/bin/date -d yesterday +'%d\\/%b\\/%Y')'/ p' /var/log/httpd/access_log-${domain} | ${pkgs.goaccess}/bin/goaccess -o /var/lib/goaccess/${domain}/index.html -p ${conf}";
+        stats = domain: conf: let
+          d = pkgs.writeScriptBin "stats-${domain}" "${pkgs.gnused}/bin/sed -n '/\\['$(LC_ALL=C ${pkgs.coreutils}/bin/date -d yesterday +'%d\\/%b\\/%Y')'/ p' /var/log/httpd/access_log-${domain} | ${pkgs.goaccess}/bin/goaccess -o /var/lib/goaccess/${domain}/index.html -p ${conf}";
+          in "${d}/bin/stats-${domain}";
       in [
         "5 0 * * * root ${stats "aten.pro" ./packages/aten_goaccess.conf}"
         "5 0 * * * root ${stats "ludivinecassal.com" ./packages/ludivinecassal_goaccess.conf}"
         "5 0 * * * root ${stats "piedsjaloux.fr" ./packages/piedsjaloux_goaccess.conf}"
+        "5 0 * * * root ${stats "osteopathe-cc.fr" ./packages/chloe_goaccess.conf}"
         ];
     };
   };