L'annuaire étant à l'abandon depuis quelques années, il est nécessaire de le remettre à jour et de lui redonner un coup de neuf.
L'annuaire pioche directement l'annuaire depuis le serveur LDAP de l'école.
L'importation d'une nouvelle promotion se fait comme suit :
Il faut se rendre dans la configuration des requêtes LDAP en passant par Configuration → Personnes → Configuration LDAP → Requêtes. Une fois arrivé sur ce menu les requêtes existantes s'affichent. On réutilise les même paramètres, pour exemple pour la promo 2018 :
Dans les options avancées :
Ici pas besoin de tout reconfigurer. On va cloner le dernier importateur.
Pour créer l'importateur 2018, on clone celui de 2017 et on va y apporter quelques modifications. Pour cela Structure → Importateurs feeds → ldap import 2017 → cloner. On lui donne un nom original comme ldap import 2018.
Ensuite il suffit de modifier la requête qu'il effectue. A gauche, il faut aller dans les paramètres de LDAP Query Fetcher et sélectionner la requête que l'on vient de créer.
L'importateur est maintenant prêt.
Pour lancer l'importation on va dans Contenu → Importer → Ldap import 2018 et ensuite on lance la requête. On attend une petite minute et les élèves sont maintenant importés.
Après l'importation, une bonne partie des élèves de la promo n'ont pas le bon champ indiquant leur promo, ils ont des trucs du genre S6_OIM_02.2 qui correspondent à des groupes permettant d'afficher l'emploi du temps. Pour faire ça il suffit de tout corriger manuellement. (Enfin, de façon astucieuse : on est au GInfo quand même.)
L'astuce va être de créer un fichier csv qui va contenir les bonnes associations nom d'utilisateurs / promo.
Rien de plus simple, on se déplace dans le répertoire de la promo, et on envoie la liste des dossiers dans un fichier qui sera notre base de travail. Sur SAS1 :
$> cd /users/promo2019 $> ls > ~/p2019.csv
Un fichier p2019.csv vous attend dans votre home ! Le fichier que l'on vient de créer n'est pas vraiment un csv, il faut le retravailler pour qu'il ressemble à ça :
username,promo aafrit,promo2019 abadre,promo2019 abaehl,promo2019 aboche,promo2019 aboinnot,promo2019 ....
Pour cela un petit script qui peut être utile :
promo = input("Promo : ") users = open("p"+promo+".csv").read().split("\n") out = [] for u in users: if ".supprime" in u: continue out.append(u+",promo"+promo) out = "username,promo\n"+"\n".join(out) open("p"+promo+".csv", "w+").write(out)
On l'utilise l'importateur Promo fix fait spécialement pour ça et déjà tout configuré. Contenu → Importer → Promo fix. On choisit le fichier que l'on vient de créer, on envoie et c'est parti. Tout le monde a la bonne promo à présent !