From 570dc611d4fa84e76803811ad61538e7735f8b4a Mon Sep 17 00:00:00 2001 From: grisel-davy Date: Tue, 7 Aug 2018 17:38:12 +0200 Subject: [PATCH] =?UTF-8?q?verifie=20si=20il=20y=20a=20besoin=20de=20reg?= =?UTF-8?q?=C3=A9n=C3=A9rer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) mode change 100755 => 100644 main.py diff --git a/main.py b/main.py old mode 100755 new mode 100644 index 38b2207..28152d4 --- a/main.py +++ b/main.py @@ -25,22 +25,30 @@ client_hostname = socket.gethostname().split('.', 1)[0] all_users = api_client.list("mail/alias") -# Création de l'environnement Jinja -env = Environment(loader=FileSystemLoader('.')) -template = env.get_template('templates/list') -aliases_rendered = template.render(data=all_users) -fichier = open('generated/aliases','w') +def generate(api_client): + # Création de l'environnement Jinja + env = Environment(loader=FileSystemLoader('.')) + template = env.get_template('templates/list') + aliases_rendered = template.render(data=all_users) -if os.path.isfile('aliases_local'): # if a local aliases file exist, add it's content at the beginning - local = open('aliases_local','r') - for line in local.readlines(): - fichier.write(line) - local.close() + fichier = open('generated/aliases','w') -fichier.write(aliases_rendered) -fichier.close() + if os.path.isfile('aliases_local'): # if a local aliases file exist, add it's content at the beginning + local = open('aliases_local','r') + for line in local.readlines(): + fichier.write(line) + local.close() + fichier.write(aliases_rendered) + fichier.close() -call(["newalias", "generated/aliases"]) # Update the aliases config file -call(["postfix", "reload"]) # force the reloading now + call(["newalias", "generated/aliases"]) # Update the aliases config file + call(["postfix", "reload"]) # force the reloading now + +for service in api_client.list("services/regen/"): + if service['hostname'] == client_hostname and \ + service['service_name'] == 'mail-server' and \ + service['need_regen']: + generate(api_client) + api_client.patch(service['api_url'], data={'need_regen': False})