]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/websites/ludivine/integration.nix
Migrate php sessions to redis
[perso/Immae/Config/Nix.git] / modules / private / websites / ludivine / integration.nix
index db05b94b343db5f3e076356eb55f2f7fcbf79c65..33ab191a1bc30d04a88fc0b8ecef8aaebf700ccd 100644 (file)
@@ -6,7 +6,6 @@ let
   phpRoot = "${ftpRoot}/php";
   webRoot = "${phpRoot}/web";
   varDir = "${ftpRoot}/var";
-  sessionDir = "${ftpRoot}/sessions";
   packagePath = "/var/lib/ftp/release.immae.eu/buildbot/Ludivine";
   branch = "test";
 in {
@@ -24,7 +23,8 @@ in {
           config.secrets.fullPaths."websites/ludivine/integration"
           "/tmp"
         ];
-        "php_admin_value[session.save_path]" = sessionDir;
+        "php_admin_value[session.save_handler]" = "redis";
+        "php_admin_value[session.save_path]" = "'unix:///run/redis-php-sessions/redis.sock?persistent=1&prefix=Ludivine:Production:'";
         "php_admin_value[upload_max_filesize]" = "20M";
         "php_admin_value[post_max_size]" = "20M";
         #"php_admin_flag[log_errors]" = "on";
@@ -35,7 +35,7 @@ in {
       phpEnv = {
         SYMFONY_DEBUG_MODE = "\"yes\"";
       };
-      phpPackage = pkgs.php72;
+      phpPackage = pkgs.php72.withExtensions({ enabled, all }: enabled ++ [all.redis]);
     };
     systemd.services."phpfpm-ludivine_integration" = {
       after = lib.mkAfter ["mysql.service"];
@@ -85,7 +85,7 @@ in {
     system.activationScripts.ludivine_integration = {
       deps = [];
       text = ''
-        install -m 0700 -o ${config.services.httpd.Inte.user} -g ${config.services.httpd.Inte.group} -d ${ftpRoot} ${sessionDir}
+        install -m 0700 -o ${config.services.httpd.Inte.user} -g ${config.services.httpd.Inte.group} -d ${ftpRoot}
       '';
     };