franGiPane - listes de discussion
Pages liées :
- scripts : scripts
Mode maintenance
Il nous faut pouvoir désactiver le mail d'un domaine donné, d'un coup. Le pourquoi du comment est expliqué sur Email#Mode_maintenance.
Les listes sont gérées de façon un peu spéciale :
hash:/var/lib/mailman/data/virtual-mailman
est listé dansvirtual_alias_maps
, et contient des lignes du genre :nom_de_liste@domaine.tld nom_de_liste nom_de_liste-request@domaine.tld nom_de_liste-request
hash:/var/lib/mailman/data/aliases
est listé dansalias_maps
, et contient des lignes du genre :nom_de_liste: "|/var/lib/mailman/mail/mailman post nom_de_liste" nom_de_liste-request: "|/var/lib/mailman/mail/mailman request nom_de_liste"
Ainsi, même si domaine.tld est en maintenance, si la première de ces sources donne à voir à Postfix ces aliases, les mails destinés aux listes arriveront dans notre queue, et c'est la seconde source qui prendra le relais. Nous ne voulons pas que ça arrive, car lorsque domaine.tld est en maintenance, rien ne dit que les listes seront créées et fonctionnelles.
Par conséquent, le seul moyen de bloquer aussi les listes d'un domaine en maintenance est de cacher à Postfix les aliases de la première source (hash:/var/lib/mailman/data/virtual-mailman
).
TODO : Il faut donc que ces aliases soient donnés à voir à Postfix via PostgreSQL.
SQL
POSTFIX_STYLE_VIRTUAL_DOMAINS
& add_virtualhost
, dans mm_cfg.py
, doivent être définie/lancées en fonction des domaines dont on gère les mails ; vu que ce fichier de conf est un script Python, il suffit d'utiliser les libs Python permettant de taper dans du SQL pour récupérer la liste de ces domaines et faire ce qu'il faut.