Commit graph

244 commits

Author SHA1 Message Date
Pierre-Elliott Bécue
b5a6062c44 [lc_ldap] Changement de protocole dans la création des objets
* _create_entity a été changée pour récupérer des dicos de valeurs encodées,
 on adapte les méthodes new* en virant les uldifs, et en rendant l'historique
 non unicode.
 * Ipsec est facultatif, donc on le crée après avoir instancié la machine, que
 l'on souhaite instancier le plus tôt possible, et on en laisse la gestion
 à attributs, pour le parsage etc
2013-05-08 02:18:13 +02:00
Valentin Samir
3b09c98c5b Merge branch 'master' of charybde.crans.org:/git/ldap 2013-05-08 01:15:57 +02:00
Valentin Samir
c5cbac5468 [lc_ldap] Methode pour supprimer un objet et le ressuciter
le cimetière est dans /home/cimetiere_lc/
ressucite prend le path du fichier contenant l'object à ressuciter
2013-05-08 01:14:30 +02:00
Valentin Samir
70fbc96d9d [lc_ldap] Certain attributs n'appartiennent à adherent que s'il est un cransAccount 2013-05-08 01:13:39 +02:00
Pierre-Elliott Bécue
af109e8c61 [lc_ldap] attrify ne reçoit plus de ldif, donc _create_entity doit changer
On en profite pour virer ldif_to_cldif, et pour donner une fonction
.items à AttrsDict
2013-05-05 10:45:15 +02:00
Pierre-Elliott Bécue
a7d3af3ca1 [lc_ldap/attributs] ns1.crans.ens-cachan.fr n'était pas un nom d'hôte valide. 2013-05-05 05:41:36 +02:00
Valentin Samir
5942ee143c [lc_ldap] Création de machines : ipsec si machine wifi, ajout d'une ligne d'historique 2013-05-02 17:55:54 +02:00
Valentin Samir
c727420624 [lc_ldap] Ordre des arguments de attrify
On remarquera que là, ce n'est pas l'objet (propritaire de l'attribut)
qui est passé à attrify mais le ldif de l'objets. La raison est que
lors de la création d'un objets celui-ci n'existe pas encore et que l'on
a cependant besoin d'informations contenue dans le ldif.
Pour le moment la substitution semble parfaitement transparente.
2013-05-02 17:52:11 +02:00
Vincent Le Gallic
9dee21d45a [__init__.py] accès possible à toutes fonctions définie dans le module 2013-04-16 00:03:05 +02:00
Vincent Le Gallic
d27d617946 merge commit 2013-04-15 16:51:33 +02:00
Pierre-Elliott Bécue
7bc1f4daaa [lc_ldap/attributs] On rajoute quelques attributs du schéma non implémentés 2013-04-15 16:10:39 +02:00
Pierre-Elliott Bécue
e5f91d8567 [lc_ldap] Certains objets n'ont pas tous les attributs qu'ils devraient avoir. 2013-04-15 01:53:11 +02:00
Valentin Samir
771419d932 [lc_ldap] Ajout d'un wrapper pour se connecter à la base en readonly 2013-04-10 10:56:19 +02:00
Valentin Samir
d8c8e55909 [lc_ldap] Ajout d'une méthode pour affectuer une ipv4 à une machine wifi si elle n'est pas pas déjà une. 2013-04-10 10:54:42 +02:00
Valentin Samir
f88b6ec688 [lc_ldap] Il arrive d'ajouter des attributs à un objets qui n'existe pas encore, par exemple pour les attributs optionnels,
il faut voir ce que ça implique vis ç vis du test d'unicité
2013-04-10 10:53:23 +02:00
Valentin Samir
ad448a12a1 [lc_ldap] check_ctxt a vraiement été supprimé 2013-04-10 10:52:45 +02:00
Valentin Samir
4f1dcce982 [attributs] ipv6_of_mac mange des strings et pas des instances d'Attrs 2013-04-10 10:51:55 +02:00
Pierre-Elliott Bécue
d01ee90fc7 Merge branch 'master' of charybde.crans.org:/git/ldap 2013-04-08 13:07:23 +02:00
Pierre-Elliott Bécue
66326bc3b9 [filter/crans_utils] Commentaire au début 2013-04-08 13:06:47 +02:00
Pierre-Elliott Bécue
182642d30e [lc_ldap] Ici aussi ctxt_check a été droppé. 2013-04-08 13:05:05 +02:00
Valentin Samir
8fd228f6bd [lc_ldap] ctxt_check a été jeté 2013-04-08 12:34:11 +02:00
Pierre-Elliott Bécue
8ce84e7589 [lc_ldap] create et save vérifient que les attributs non optionnels sont fournis 2013-04-08 00:14:14 +02:00
Pierre-Elliott Bécue
180c17baed [global] On jette ctxt_check, et les ldifs qui traînent partout, qu'on remplace.
* Les ldifs sont remplacés par un pointeur vers l'objet propriétaire des attributs
 * Le test de cardinalité est fait lors du setitem dans AttrsDict
 * Le test d'unicité dans le setitem d'un CransLdapObject.
   Le setitem vérifie également qu'on affecte pas des attributs non désirés à un objet
2013-04-08 00:12:00 +02:00
Pierre-Elliott Bécue
60ea18d180 [attributs] rm -f check_users_restrictions 2013-04-06 14:41:08 +02:00
Pierre-Elliott Bécue
93d5a11d66 [lc_ldap] On vérifie désormais que $dude peut modifier les attributs.
Les principales modifs touchent __setitem__, il faut voir s'il n'y a pas mieux
pour les histoires de cardinalité, quitte à réécrire des choses. Par ailleurs,
j'ai l'impression que le test sur les attributs nécessaires/optionnels
ne sert à rien, il faut voir comment on veut gérer ça.
2013-04-03 02:51:46 +02:00
Pierre-Elliott Bécue
b565cc51e5 [lc_ldap] On interdit la modification d'objets comme les machines
Crans aux câbleurs par exemple.
2013-04-02 03:22:45 +02:00
Pierre-Elliott Bécue
90a0b565cc [lc_ldap] Quitte à faire du lazy attrify, autant le faire partout,
pour avoir une certaine homogénéité dans le code.
2013-04-01 23:13:32 +02:00
Valentin Samir
b957a41cd7 On n'oublie de retourner aussi les valeurs déjà attrifiées 2013-04-01 23:07:23 +02:00
Valentin Samir
0c0338719c On attrify également lorsque la valeur est appelé avec .get(...) 2013-04-01 22:32:36 +02:00
Valentin Samir
db32b1d65a On ajoute de la paresse dans la transformation des attributs ldap en attributs python.
Cela permets d'économiser de la mémoire lorsque l'on manipule un nombre important d'objet
2013-04-01 22:17:27 +02:00
Vincent Le Gallic
cda292dcdb Merge branch 'master' of charybde.crans.org:/git/ldap 2013-03-26 16:30:44 +01:00
Vincent Le Gallic
615e4eb20c Éclatement de config.py 2013-03-26 16:30:15 +01:00
Vincent Le Gallic
4891c9d14e [tools/b62decode] Script "crade" pour rendre human-readable un ldif avec du base64 dedans.
Le .gitignore du dossier sert à ne pas versionner les fichiers d'exemple/test
2013-03-22 15:49:16 +01:00
Vincent Le Gallic
102eb1bbd8 [modif non commitées] lc_ldap_tests est un vieux test qui ne sert plus à rien 2013-03-22 13:50:46 +01:00
Pierre-Elliott Bécue
924f5c0684 [locks] Création d'une nouvelle gestion de locks.
J'ai pas mal regardé le travail d'adg, certains trucs ne me convenaient
pas dans la gestion, du coup j'ai réécrit un truc, qui me semble
mieux.

J'ai laissé la licence telle quelle, mais j'ai mis mon nom en author
2013-03-09 19:55:21 +01:00
Vincent Le Gallic
c288f2b60b [.gitignore] on ignore juste la doc compilée 2013-03-07 19:13:07 +01:00
Vincent Le Gallic
d3c6d699f5 Merge branch 'master' of charybde.crans.org:/git/ldap 2013-03-07 19:12:05 +01:00
Vincent Le Gallic
f8dfda51a3 [.gitignore] On ne versionne pas la doc 2013-03-07 19:11:47 +01:00
Olivier Iffrig
ec40333e10 Formatage Sphinx d'une partie des docstrings
Modifs non commitées qui traînaient dans ma copie, histoire d'éviter les conflits...
2013-03-07 18:46:09 +01:00
Pierre-Elliott Bécue
b72d61108f [lc_ldap] On laisse lc_ldap_local dans l'état initial, vu que maintenant j'ai réglé les problèmes de temps d'accès aux imprimeurs club. 2013-03-05 17:10:09 +01:00
Pierre-Elliott Bécue
dfed1fceb2 [attributs] Les imprimeurs et les respos des clubs sont générés à la volée
Leur valeur sont un property au lieu d'une valeur fixe.
2013-03-05 16:55:21 +01:00
Pierre-Elliott Bécue
83198b6bf6 [attributs] On vérifie via le serveur smtp que les adresses mail sont libres.
C'est bien plus efficace, car les alias hardcodés dans /etc/postfix/aliases sont compris dans ce test là.
2013-03-04 21:23:29 +01:00
Pierre-Elliott Bécue
c31735913e [lc_ldap] Correctif sur les droits avec majuscule au milieu, même s'ils devraient juste disparaître. 2013-03-04 21:20:57 +01:00
Vincent Le Gallic
024c3a74f0 [attributs.py] contournegreylist doit s'__unicode__er en u"OK" 2013-03-04 14:49:48 +01:00
Vincent Le Gallic
259dde8835 [attributs] u'OK' doit aussi être considéré comme un booléen correct. 2013-03-04 12:47:13 +01:00
Pierre-Elliott Bécue
174bd87524 [lc_ldap] ob.__class__.__name__ ne retournait pas ce qu'on m'avait dit qu'il retournait... 2013-03-04 07:29:49 +01:00
Pierre-Elliott Bécue
23ebf9de76 [attributs] Bug fixes sur les attributs concernant les bornes, et ajout d'un attribut manquant à la lookup table 2013-03-04 07:08:12 +01:00
Pierre-Elliott Bécue
c06e77fee9 [attributs] Mise à jour de la lookuptable, et corrections de trois erreurs
* responsable = u"responsable" => respo = u"responsable" (collision avec classe)
 * modifiables.append => modifiables.add (modifiables est un ensemble, pas une liste)
 * can_modify => self.can_modify (attribut, pas global)
2013-03-04 06:49:17 +01:00
Pierre-Elliott Bécue
f329693da9 [attributs] A last typo 2013-03-04 06:31:29 +01:00
Pierre-Elliott Bécue
f55be5d0de [attributs] Typo 2013-03-04 06:28:39 +01:00