]> git.immae.eu Git - perso/Immae/Config/Nix.git/commitdiff
Do stats computation sequentially
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Fri, 15 Feb 2019 08:48:28 +0000 (09:48 +0100)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Fri, 15 Feb 2019 08:48:28 +0000 (09:48 +0100)
We do it now sequentially rather than relying on the previous job taking
less than one minute to finish (which is unlikely as the size of the
logs grow)

Goaccess doesn’t like to be started twice concurrently, so sequential is
needed

Fixes https://git.immae.eu/mantisbt/view.php?id=110

nixops/modules/websites/commons/stats.nix

index b5bf0e04dc6658be784c11ebddbc6b20edfdc0ed..e2c1e62f73402a52a821fb670bb513b0682f1792 100644 (file)
@@ -55,8 +55,15 @@ in {
             goaccess $TMPFILE --no-progress -o /var/lib/goaccess/${domain}/index.html -p ${conf}
             '';
           in "${d}/bin/stats-${domain}";
+        allStats = sites: pkgs.writeScript "stats" ''
+          #!${pkgs.stdenv.shell}
+
+          ${builtins.concatStringsSep "\n" (map (v: stats v.name v.conf) sites)}
+          '';
       in
-        pkgs.lib.lists.imap0 (i: v: "${toString (i+5)} 0 * * * root ${stats v.name v.conf}") cfg.sites;
+        [
+          "5 0 * * * root ${allStats cfg.sites}"
+        ];
     };
 
     system.activationScripts.goaccess = ''