]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - modules/private/mail/relay.nix
Add sympa mailing lists to MX backup
[perso/Immae/Config/Nix.git] / modules / private / mail / relay.nix
index ae74112bb2cc92cd2df50ba4768a92b992562c04..52288fc1b13a73a45d69932433de130af2eca2b4 100644 (file)
             LIMIT 1
         '';
       }
+      {
+        dest = "postfix/sympa_mailbox_maps";
+        user = config.services.postfix.user;
+        group = config.services.postfix.group;
+        permissions = "0440";
+        text = ''
+          hosts = ${config.myEnv.mail.sympa.postgresql.host}
+          user = ${config.myEnv.mail.sympa.postgresql.user}
+          password = ${config.myEnv.mail.sympa.postgresql.password}
+          dbname = ${config.myEnv.mail.sympa.postgresql.database}
+          query = SELECT DISTINCT CONCAT(name_list, '@', robot_list) FROM list_table
+        '';
+      }
       {
         dest = "postfix/ldap_ejabberd_users_immae_fr";
         user = config.services.postfix.user;
       paths = [
         config.secrets.fullPaths."postfix/mysql_alias_maps"
         config.secrets.fullPaths."postfix/mysql_mailbox_maps"
+        config.secrets.fullPaths."postfix/sympa_mailbox_maps"
         config.secrets.fullPaths."postfix/ldap_ejabberd_users_immae_fr"
       ];
     };
           virtual_mailbox_maps = [
             "hash:/etc/postfix/host_dummy_mailboxes"
             "mysql:${config.secrets.fullPaths."postfix/mysql_mailbox_maps"}"
+            "pgsql:${config.secrets.fullPaths."postfix/sympa_mailbox_maps"}"
           ];
         in
           backup_recipients ++ virtual_alias_maps ++ virtual_mailbox_maps;