diff --git a/scripts/module/change_domain.py b/scripts/module/change_domain.py index 1737076..97afc7d 100644 --- a/scripts/module/change_domain.py +++ b/scripts/module/change_domain.py @@ -10,32 +10,35 @@ from collections import OrderedDict def display_help(): print("Modification de la valeur d'une variable d'un serveur") - print("{} [--r realm --d domain]".format(sys.argv[0])) + print("{} [--r realm --d domain --save]".format(sys.argv[0])) def argparser(): # récupère l'ID du groupe arglen = len(sys.argv) + save = False + if "--save" in sys.argv: + save = True if arglen == 1: - return None, None + return None, None, save if sys.argv[1] in ['-h', '--help']: display_help() sys.exit(0) if sys.argv[1] in ['-r', '--realm']: realm = sys.argv[2] - return realm, None + return realm, None, save if sys.argv[3] in ['-d', '--domain']: domain = sys.argv[4] - return realm, domain + return realm, domain, save - return None, None + return None, None, save def main(): # import des fonctions communes de Zéphir client - realm, domain = argparser() + realm, domain, save = argparser() if realm is None : realm = raw_input("Realm AD : ") @@ -64,6 +67,10 @@ def main(): output = os.popen(cmd) res = output.read().strip() output.close() + if save: + cmd="""/usr/share/zephir/scripts/zephir_client save_files""" + output = os.popen(cmd) + output.close() if __name__ == '__main__': main() diff --git a/scripts/module/set_var.py b/scripts/module/set_var.py index aff8ef5..407ca99 100644 --- a/scripts/module/set_var.py +++ b/scripts/module/set_var.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -import sys, getpass, socket, cjson +import sys, getpass, socket, cjson, os from pyeole.ihm import print_line from pyeole.ansiprint import print_orange, print_red from creole.client import CreoleClient @@ -10,33 +10,36 @@ from collections import OrderedDict def display_help(): print("Modification de la valeur d'une variable d'un serveur") - print("{} [--var nom_variable --value valeur]".format(sys.argv[0])) + print("{} [--var nom_variable --value valeur --save]".format(sys.argv[0])) def argparser(): # récupère l'ID du groupe arglen = len(sys.argv) + save = False + if "--save" in sys.argv: + save = True if arglen == 1: - return None, None + return None, None, save + if sys.argv[1] in ['-h', '--help']: display_help() sys.exit(0) - if sys.argv[1] in ['-v', '--var']: varc = sys.argv[2] - return varc, None + if sys.argv[3] in ['-l', '--value']: + valvar = sys.argv[4] + return varc, valvar, save + else: + return varc, None, save - if sys.argv[3] in ['-l', '--value']: - valvar = sys.argv[4] - return varc, valvar - - return None, None + return None, None, save def main(): # import des fonctions communes de Zéphir client - varc, valvar = argparser() + varc, valvar, save = argparser() if varc is None : @@ -49,11 +52,17 @@ def main(): store = cjson.decode(fh.read(), all_unicode=True) fh.close if varc in store: + if "|" in valvar: + valvar = valvar.split("|") store[varc]['val'] = valvar fh = open("/etc/eole/config.eol", 'w') fh.write(cjson.encode(store)) fh.close() + if save: + cmd="""/usr/share/zephir/scripts/zephir_client save_files""" + output = os.popen(cmd) + output.close() else: print_orange('Erreur : variable {} inconnue'.format(varc))