Segnalazione #330
Importazione CSV: non imposta correttamente gruppo primario
0%
Description
Importanto utenti da CSV, non importa il gruppo primario.
Revisionando la via users.views.CSVImporter riga 870, viene popolato il dict per la definizione di user utilizzando la chiave 'primarygroup', che pero' non e' la definizione del gruppo primario come attributo dell'utente, che e' 'gidNumber', espresso tramite intero che rappresenta il gruppo.
Bisogna, all'interno di CSVImporter, tenere un dict contenente tutti i gruppi presenti nel csv, popolato via via che si importano righe, nella forma {"nomegruppo": "gid numerico"}, popolato e aggiornato via via che si incontrano gruppi nelle righe del csv. Se il gruppo della riga e' presente nel dizionario, si usa il valore numerico corrispondente, altrimenti bisogna fare il lookup del gruppo verso octofussd, ottenerne il gid e aggiungerlo al dizionario di cui sopra, per poi usarlo. Il dizionario funge da cache locale per ridurre le richieste di gruppi a octofussd.
Verificato durante installazione del 27/06
History
Updated by Mark Caglienzi over 7 years ago
- Status changed from In elaborazione to Commenti
- Assignee changed from Mark Caglienzi to Christopher R. Gabriel
Dopo confronto su jabber è stato deciso di mandare la chiave giusta (cioè primaryGroup
con la G maiuscola anziché minuscola) da octofussd, che poi fa il lookup del gid.
In questo modo non c'è da fare lookup in octonet e se ne va il bisogno di avere il dict di cache. Poi octofussd fa il lookup da nome gruppo a gid all'interno di _fillInNewUser()
, però lo fa per ogni utente.
Ora l'import di utenti che sono nel primary group docenti funziona nel senso che il gid viene impostato al gid di docenti, e l'utente è inserito in quel gruppo quindi.
Problema correlato: l'utente viene messo comunque nella ou studenti da octofussd.
Codice pushato in t330
ma non mergiato
Updated by Christopher R. Gabriel over 7 years ago
- Assignee changed from Christopher R. Gabriel to Mark Caglienzi
Ho fatto invocare la setgidNumber in modo esplicito ad octofussd per avere la corretta impostazione della OU.
Ho pubblicato tutto sui rispettivi master (eseguendo il merge di t330 di octonet) e pubblicati:
octofussd 8.0.31-1
octonet 0.2.16-1
Ti chiedo di fare una verifica veloce anche tu, se ti torna, chiudi pure.
Updated by Mark Caglienzi over 7 years ago
- Status changed from Commenti to Chiuso
- Assignee changed from Mark Caglienzi to Christopher R. Gabriel
Ho aggiornato octonet e octofussd sulla VM, e ho usato entrambi sulla VM.
Ho fatto un CSV di 10 utenti, metà studenti e metà docenti, e vengono importati nel gruppo giusto e con la ou giusta.
Use the right key. refs: #330