From eaf913de6a8a8b1e186dddf27d2317f6dca03c82 Mon Sep 17 00:00:00 2001 From: Valentin Samir Date: Sun, 9 Nov 2014 17:21:21 +0100 Subject: [PATCH] =?UTF-8?q?[ressuscite=5Flc]=20Sp=C3=A9cification=20des=20?= =?UTF-8?q?lockIds=20et=20context=20manager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gestion/ressuscite_lc.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/gestion/ressuscite_lc.py b/gestion/ressuscite_lc.py index 496c33d1..f53e1241 100755 --- a/gestion/ressuscite_lc.py +++ b/gestion/ressuscite_lc.py @@ -11,18 +11,19 @@ import sys import pprint from affich_tools import coul, prompt from IPython.frontend.terminal.embed import InteractiveShellEmbed +import contextlib import lc_ldap.shortcuts import lc_ldap.attributs import lc_ldap.crans_utils import lc_ldap.printing def reset_ip(machine): - machine['rid']=unicode(conn._find_id('rid', lc_ldap.crans_utils.find_rid_plage(machine['rid'][0].value)[0])) + machine['rid']=unicode(conn._find_id('rid', lc_ldap.crans_utils.find_rid_plage(machine['rid'][0].value)[0], lockId=machine.lockId)) machine['ipHostNumber']=lc_ldap.attributs.ipHostNumber.default machine['ip6HostNumber']=lc_ldap.attributs.ip6HostNumber.default def reset_mid(machine, proprio=None): - machine['mid']=unicode(conn._find_id('mid')) + machine['mid']=unicode(conn._find_id('mid', lockId=machine.lockId)) if proprio: machine.dn="mid=%s,aid=%s,%s" % (machine['mid'][0], proprio['aid'][0], machine.dn.split(',',2)[2]) else: @@ -51,7 +52,8 @@ if __name__ == '__main__': print lc_ldap.printing.sprint(coffins[0]) ret=prompt("Ressuciter ?[y,n,e]", "N") if ret.lower() == 'y': - coffins[0].create() + with coffins[0] as machine: + machine.create() if ret.lower() == 'e': raise Edit("Édition manuelle") else: @@ -67,8 +69,9 @@ Pour ressuciter les machines, il y a en plus les fonctions : * reset_ip(machine) """ ipshell = InteractiveShellEmbed.instance(banner1 = unicode(msg, 'utf-8')) - ipshell() - sys.exit(0) + with contextlib.nested(*coffins) as coffins: + ipshell() + sys.exit(0) except ValueError as error: print coul("%s" % error, "rouge") else: