-{ apacheUser, apacheGroup, aten, lib, config }: rec {
+{ apacheUser, apacheGroup, aten, lib, mylibs, config }: rec {
app = aten.override { inherit (config) environment; };
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 ${apacheUser} APP_ENV=${app.environment} ./bin/console --env=${app.environment} cache:clear --no-warmup
- popd > /dev/null
- echo -n "${app}" > ${app.varDir}/currentWebappDir
- sha512sum /var/secrets/webapps/${app.environment}-aten > ${app.varDir}/currentKey
- fi
- '';
+ preStart = mylibs.phpFpmPreStart {
+ inherit app;
+ inherit (app) varDir;
+ keyFiles = [
+ "/var/secrets/webapps/${app.environment}-aten"
+ ];
+ actions = [
+ "/run/wrappers/bin/sudo -u ${apacheUser} APP_ENV=${app.environment} ./bin/console --env=${app.environment} cache:clear --no-warmup"
+ ];
+ };
serviceDeps = [ "postgresql.service" ];
socket = "/var/run/phpfpm/aten-${app.environment}.sock";
pool = ''