]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/websites/florian/builder_app.nix
Add phpFpm prestart script to lib
[perso/Immae/Config/Nix.git] / modules / private / websites / florian / builder_app.nix
index e521f6ebfe6e8d2b7c6df46a1e97c8177af2c1b1..c12663a7175e4fd09ff76f8e4886c885723926e9 100644 (file)
@@ -1,4 +1,4 @@
-{ apacheUser, apacheGroup, tellesflorian, config }:
+{ apacheUser, apacheGroup, tellesflorian, mylibs, config }:
 rec {
   app = tellesflorian.override { inherit (config) environment; };
   keys = [
@@ -33,18 +33,16 @@ rec {
     }
   ];
   phpFpm = rec {
-    preStart = ''
-      if [ ! -f "${app.varDir}/currentWebappDir" -o \
-          ! -f "${app.varDir}/currentKey" -o \
-          "${app}" != "$(cat ${app.varDir}/currentWebappDir 2>/dev/null)" ] \
-          || ! sha512sum -c --status ${app.varDir}/currentKey; then
-        pushd ${app} > /dev/null
-        /run/wrappers/bin/sudo -u wwwrun ./bin/console --env=${app.environment} cache:clear --no-warmup
-        popd > /dev/null
-        echo -n "${app}" > ${app.varDir}/currentWebappDir
-        sha512sum /var/secrets/webapps/${app.environment}-tellesflorian > ${app.varDir}/currentKey
-      fi
-      '';
+    preStart = mylibs.phpFpmPreStart {
+      inherit app;
+      inherit (app) varDir;
+      keyFiles = [
+        "/var/secrets/webapps/${app.environment}-tellesflorian"
+      ];
+      actions = [
+        "/run/wrappers/bin/sudo -u wwwrun ./bin/console --env=${app.environment} cache:clear --no-warmup"
+      ];
+    };
     serviceDeps = [ "mysql.service" ];
     socket = "/var/run/phpfpm/floriantelles-${app.environment}.sock";
     pool = ''