supporting email redirections

This commit is contained in:
Charlie Jacomme 2018-08-11 03:52:54 +02:00
parent 5cf9299069
commit bfd05cdb89
4 changed files with 262 additions and 2 deletions

20
main.py
View file

@ -30,7 +30,9 @@ def generate(api_client):
all_users = api_client.list("localemail/users")
# Création de l'environnement Jinja
env = Environment(loader=FileSystemLoader(path))
template = env.get_template('templates/list')
# On commence par les alias
template = env.get_template('templates/list_alias')
aliases_rendered = template.render(data=all_users)
fichier = open(path+'/generated/aliases','w')
@ -44,7 +46,23 @@ def generate(api_client):
fichier.write(aliases_rendered)
fichier.close()
# On enchaine avec les redirections
template = env.get_template('templates/list_virtual')
virtuals_rendered = template.render(data=all_users)
fichier = open(path+'/generated/virtual','w')
if os.path.isfile(path+'/virtuals_local'): # if a local aliases file exist, add it's content at the beginning
local = open(path+'/virtuals_local','r')
for line in local.readlines():
fichier.write(line)
local.close()
fichier.write(virtuals_rendered)
fichier.close()
call(["/usr/bin/newaliases"], stdout=open(os.devnull, 'wb')) # Update the aliases config file
call(["/usr/sbin/postmap", path+"/generated/virtual"], stdout=open(os.devnull, 'wb')) # Update the aliases config file
call(["/usr/sbin/postfix", "reload"]) # force the reloading now
for arg in sys.argv: