]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/websites/chloe/integration.nix
Remove duply-backup
[perso/Immae/Config/Nix.git] / modules / private / websites / chloe / integration.nix
index ffae6ecd703c11a7dad783cf40125835157d6b0a..4dc4bf3ffdc6b44f72722f6982f27ad18e8dd44b 100644 (file)
@@ -3,41 +3,33 @@ let
   apacheUser = config.services.httpd.Inte.user;
   apacheGroup = config.services.httpd.Inte.group;
   ccfg = config.myEnv.websites.chloe.integration;
-  app = pkgs.callPackage ./app {
-    inherit (ccfg) environment;
-    inherit (pkgs.webapps) spip;
-    varDir = "/var/lib/chloe_integration";
-  };
+  webRoot = "/var/lib/ftp/immae/chloe";
+  varDir = "/var/lib/ftp/immae/chloe_var";
   cfg = config.myServices.websites.chloe.integration;
-  webappdir = config.services.websites.webappDirsPaths.chloe_integration;
 in {
   options.myServices.websites.chloe.integration.enable = lib.mkEnableOption "enable Chloe's website in integration";
 
   config = lib.mkIf cfg.enable {
-    services.duplyBackup.profiles.chloe_integration.rootDir = app.varDir;
-    secrets.keys = [
-      {
-        dest = "websites/chloe/integration";
-        user = apacheUser;
-        group = apacheGroup;
-        permissions = "0400";
-        text = ''
-          SetEnv SPIP_CONFIG_DIR     "${./config}"
-          SetEnv SPIP_VAR_DIR        "${app.varDir}"
-          SetEnv SPIP_SITE           "chloe-${app.environment}"
-          SetEnv SPIP_LDAP_BASE      "dc=immae,dc=eu"
-          SetEnv SPIP_LDAP_HOST      "ldaps://ldap.immae.eu"
-          SetEnv SPIP_LDAP_SEARCH_DN "${ccfg.ldap.dn}"
-          SetEnv SPIP_LDAP_SEARCH_PW "${ccfg.ldap.password}"
-          SetEnv SPIP_LDAP_SEARCH    "${ccfg.ldap.filter}"
-          SetEnv SPIP_MYSQL_HOST     "${ccfg.mysql.host}"
-          SetEnv SPIP_MYSQL_PORT     "${ccfg.mysql.port}"
-          SetEnv SPIP_MYSQL_DB       "${ccfg.mysql.database}"
-          SetEnv SPIP_MYSQL_USER     "${ccfg.mysql.user}"
-          SetEnv SPIP_MYSQL_PASSWORD "${ccfg.mysql.password}"
-        '';
-      }
-    ];
+    secrets.keys."websites/chloe/integration" = {
+      user = apacheUser;
+      group = apacheGroup;
+      permissions = "0400";
+      text = ''
+        SetEnv SPIP_CONFIG_DIR     "${./config}"
+        SetEnv SPIP_VAR_DIR        "${varDir}"
+        SetEnv SPIP_SITE           "chloe-dev"
+        SetEnv SPIP_LDAP_BASE      "dc=immae,dc=eu"
+        SetEnv SPIP_LDAP_HOST      "ldaps://ldap.immae.eu"
+        SetEnv SPIP_LDAP_SEARCH_DN "${ccfg.ldap.dn}"
+        SetEnv SPIP_LDAP_SEARCH_PW "${ccfg.ldap.password}"
+        SetEnv SPIP_LDAP_SEARCH    "${ccfg.ldap.filter}"
+        SetEnv SPIP_MYSQL_HOST     "${ccfg.mysql.host}"
+        SetEnv SPIP_MYSQL_PORT     "${ccfg.mysql.port}"
+        SetEnv SPIP_MYSQL_DB       "${ccfg.mysql.database}"
+        SetEnv SPIP_MYSQL_USER     "${ccfg.mysql.user}"
+        SetEnv SPIP_MYSQL_PASSWORD "${ccfg.mysql.password}"
+      '';
+    };
     systemd.services.phpfpm-chloe_integration.after = lib.mkAfter [ "mysql.service" ];
     systemd.services.phpfpm-chloe_integration.wants = [ "mysql.service" ];
     services.phpfpm.pools.chloe_integration = {
@@ -49,8 +41,8 @@ in {
         "php_admin_value[upload_max_filesize]" = "20M";
         "php_admin_value[post_max_size]" = "20M";
         # "php_admin_flag[log_errors]" = "on";
-        "php_admin_value[open_basedir]" = "${app.spipConfig}:${./config}:${app}:${app.varDir}:/tmp";
-        "php_admin_value[session.save_path]" = "${app.varDir}/phpSessions";
+        "php_admin_value[open_basedir]" = "${../../../../pkgs/webapps/spip/spip_mes_options.php}:${./config}:${webRoot}:${varDir}:/tmp";
+        "php_admin_value[session.save_path]" = "${varDir}/phpSessions";
         "pm" = "ondemand";
         "pm.max_children" = "5";
         "pm.process_idle_timeout" = "60";
@@ -60,17 +52,16 @@ in {
     system.activationScripts.chloe_integration = {
       deps = [ "wrappers" ];
       text = ''
-        install -m 0755 -o ${apacheUser} -g ${apacheGroup} -d ${app.varDir} ${app.varDir}/IMG ${app.varDir}/tmp ${app.varDir}/local
-        install -m 0750 -o ${apacheUser} -g ${apacheGroup} -d ${app.varDir}/phpSessions
+        install -m 0755 -o ${apacheUser} -g ${apacheGroup} -d ${varDir} ${varDir}/IMG ${varDir}/tmp ${varDir}/local
+        install -m 0750 -o ${apacheUser} -g ${apacheGroup} -d ${varDir}/phpSessions
       '';
     };
-    services.websites.webappDirs.chloe_integration = app.webRoot;
     services.websites.env.integration.modules = [ "proxy_fcgi" ];
     services.websites.env.integration.vhostConfs.chloe_integration = {
       certName    = "integration";
       addToCerts  = true;
       hosts       = ["chloe.immae.eu" ];
-      root        = webappdir;
+      root        = webRoot;
       extraConfig = [
       ''
         Include ${config.secrets.fullPaths."websites/chloe/integration"}
@@ -81,16 +72,16 @@ in {
           SetHandler "proxy:unix:${config.services.phpfpm.pools.chloe_integration.socket}|fcgi://localhost"
         </FilesMatch>
 
-        <Directory ${webappdir}>
+        <Directory ${webRoot}>
           DirectoryIndex index.php index.htm index.html
           Options -Indexes +FollowSymLinks +MultiViews +Includes
-          Include ${webappdir}/htaccess.txt
+          Include ${webRoot}/htaccess.txt
 
           AllowOverride AuthConfig FileInfo Limit
           Require all granted
         </Directory>
 
-        <DirectoryMatch "${webappdir}/squelettes">
+        <DirectoryMatch "${webRoot}/squelettes">
           Require all denied
         </DirectoryMatch>