Script pour kludge-ressusciter quelqu'un
This commit is contained in:
parent
534b891f59
commit
58edc5970a
1 changed files with 37 additions and 0 deletions
37
utils/ressuscite_couteau_suisse.py
Executable file
37
utils/ressuscite_couteau_suisse.py
Executable file
|
@ -0,0 +1,37 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
# -*- encoding: utf-8 -*-
|
||||||
|
|
||||||
|
""" Ne regardez pas ça, c'est affreux.
|
||||||
|
|
||||||
|
Bon, si vous insistez, c'est parce que ressuscite est cassé,
|
||||||
|
ça permet de dumper un fichier du cimetière et de l'output en raw.
|
||||||
|
|
||||||
|
Ensuite, bah shelldap…"""
|
||||||
|
|
||||||
|
import cPickle
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
sys.path.append("/usr/scripts/gestion/")
|
||||||
|
import ldap_crans
|
||||||
|
|
||||||
|
|
||||||
|
def load(file=None):
|
||||||
|
"""Charge le contenu du fichier."""
|
||||||
|
if file is None:
|
||||||
|
file = sys.argv[1]
|
||||||
|
a = cPickle.load(open(file))
|
||||||
|
return a
|
||||||
|
|
||||||
|
def dump(obj):
|
||||||
|
"""Raw-affiche l'objet. En créant le dn à partir de l'aid."""
|
||||||
|
aid = obj.id()
|
||||||
|
raw= ["dn: aid=%s,ou=data,dc=crans,dc=org" % (aid)]
|
||||||
|
for (field, content) in obj._data.iteritems():
|
||||||
|
for value in content:
|
||||||
|
raw.append("%s: %s" % (field, value))
|
||||||
|
return "\n".join(raw) + "\n"
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
print "\n" + dump(load())
|
||||||
|
print "Y'a plus qu'à paste ça dans LDAP."
|
||||||
|
print "Attention à virer le dn avec ??? et l'objectClass fournis par shelldap"
|
Loading…
Add table
Add a link
Reference in a new issue