FUSS at work: Issueshttps://work.fuss.bz.it/https://work.fuss.bz.it/favicon.ico?15861920342017-06-28T05:12:21ZFUSS at work
Redmine fuss-software - Segnalazione #332 (Chiuso): vim e emacs sul desktophttps://work.fuss.bz.it/issues/3322017-06-28T05:12:21ZChristopher R. Gabrielcgabriel@truelite.it
<p>Aggiungiamo vim e emacs come editor tra le dipendenze di fuss-desktop</p> octonet - Segnalazione #330 (Chiuso): Importazione CSV: non imposta correttamente gruppo primariohttps://work.fuss.bz.it/issues/3302017-06-28T05:10:49ZChristopher R. Gabrielcgabriel@truelite.it
<p>Importanto utenti da CSV, non importa il gruppo primario.</p>
<p>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.</p>
<p>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.</p>
<p>Verificato durante installazione del 27/06</p> octonet - Segnalazione #308 (Chiuso): Miglioramento UI gruppihttps://work.fuss.bz.it/issues/3082017-06-12T17:54:31ZChristopher R. Gabrielcgabriel@truelite.it
<p>Quando si modifica un gruppo, descrive cosa e' l'azione aggiungi/rimuovi gruppo, che non e' evidente (serve ad aggiungere ad un gruppo tutti gli utenti che fanno parte del gruppo che sto modificando)</p> fuss-server - Segnalazione #305 (Chiuso): esclusione di localhost su wpad.dathttps://work.fuss.bz.it/issues/3052017-06-12T11:32:00ZChristopher R. Gabrielcgabriel@truelite.it
<p>Bisogna escludere anche localhost/127.0.0.1 dalla configurazione fornita dal wpad.dat, altrimenti non si riesce ad accedere, senza autenticarsi prima sul proxy, a servizi locali (es. cups sulla 631)</p> octofuss-client - Segnalazione #292 (Chiuso): Sincronizzazione code stampantihttps://work.fuss.bz.it/issues/2922017-06-08T08:01:38ZChristopher R. Gabrielcgabriel@truelite.it
<p>Verificare il pacchetto pubblicato per octofuss-client per la componente di sincronizzazione delle stampanti.</p>
<p>dopo aver aggiungo il server alla configurazione ( per cui octofuss-client riesce a parlare con il server ) non risultano configurate le code sul client.</p> octofuss-client - Segnalazione #291 (Chiuso): Configurazione serverhttps://work.fuss.bz.it/issues/2912017-06-08T08:00:29ZChristopher R. Gabrielcgabriel@truelite.it
<p>Verificato in aula: octofuss-client non riceve la configurazione del server da contattare.</p>
in cascata verifica:
<ul>
<li>fuss-client/server.conf, che pero' con il passaggio a ansible il file non viene piu' generato</li>
<li>octofuss-client/server.conf, che pero' non viene popolato da fuss-client</li>
<li>fuss-server/fuss-server.yaml - questo e' corretto per octofuss-client che gira sul server, ma non sul client (visto che fuss-server non esiste sulla installazione client)</li>
</ul> octonet - Segnalazione #289 (Chiuso): Octonet users & authorizations: non carica utenti localihttps://work.fuss.bz.it/issues/2892017-06-07T15:13:27ZChristopher R. Gabrielcgabriel@truelite.it
<p>La pagina di Users Authorizations di octonet non visualizza l'elenco degli utenti creati localmente, ma solo quelli presenti in ldap.</p> octonet - Segnalazione #288 (Chiuso): Octonet: persistenza della selezione per mass-edithttps://work.fuss.bz.it/issues/2882017-06-07T15:10:36ZChristopher R. Gabrielcgabriel@truelite.it
<p>Avendo cambiato la il caricamento della lista utenti da dom a ajax, la selezione per il mass edit della lista utenti non e' piu' persistente al cambio pagina, in quanto via ajax viene ricreato un nuovo dom della tabella, che contiene i dati di selezione.</p> octonet - Segnalazione #287 (Chiuso): Massedit di utenti: eccezione non gestita in caso di assenz...https://work.fuss.bz.it/issues/2872017-06-07T14:59:39ZChristopher R. Gabrielcgabriel@truelite.it
<p>Nella modifica di massa degli utenti, se la quota non e' attiva si ottiene una eccezione:<br /><pre>
Environment:
Request Method: GET
Request URL: http://octofuss.einaudi.blz/users/massedit?uids=admin,pippo
Django Version: 1.8.16
Python Version: 3.4.2
Installed Applications:
['django.contrib.sessions',
'django.contrib.messages',
'whitenoise.runserver_nostatic',
'django.contrib.staticfiles',
'octonet',
'hostqueue.apps.HostQueue',
'firewall.apps.Firewall',
'dhcp.apps.Dhcp',
'dansguardian.apps.DansGuardian',
'host.apps.Host',
'polygen.apps.Polygen',
'upgrade.apps.Upgrade',
'asterisk.apps.Asterisk',
'samba.apps.Samba',
'users.apps.Users',
'script.apps.Script',
'quota.apps.Quota',
'printers.apps.Printers',
'auth.apps.Auth']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'whitenoise.middleware.WhiteNoiseMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.locale.LocaleMiddleware',
'octonet.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']
Traceback:
File "/usr/lib/python3/dist-packages/django/core/handlers/base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python3/dist-packages/django/views/generic/base.py" in view
71. return self.dispatch(request, *args, **kwargs)
File "/usr/share/octonet/users/views.py" in dispatch
127. return super().dispatch(request, *args, **kwargs)
File "/usr/share/octonet/octonet/mixins.py" in dispatch
114. return super().dispatch(request, *args, **kw)
File "/usr/lib/python3/dist-packages/django/views/generic/base.py" in dispatch
89. return handler(request, *args, **kwargs)
File "/usr/lib/python3/dist-packages/django/views/generic/edit.py" in get
205. form = self.get_form()
File "/usr/lib/python3/dist-packages/django/views/generic/edit.py" in get_form
74. return form_class(**self.get_form_kwargs())
File "/usr/lib/python3/dist-packages/django/views/generic/edit.py" in get_form_kwargs
81. 'initial': self.get_initial(),
File "/usr/share/octonet/users/views.py" in get_initial
131. "quota": [{"fs": fs} for fs in self.root_tree.llist(["quota"])]
File "/usr/lib/python3/dist-packages/octofuss/xmlrpc.py" in llist
106. return self._wrap_call(self.server.list, "/".join(path))
File "/usr/lib/python3/dist-packages/octofuss/xmlrpc.py" in _wrap_call
78. raise exception_serializer.from_dict(res["exc"])
Exception Type: KeyError at /users/massedit
Exception Value: "'path /quota does not exist'"
</pre></p> octonet - Segnalazione #286 (Risolto): Octonet: assegnazione automatica dei permessi alla creazio...https://work.fuss.bz.it/issues/2862017-06-07T14:55:15ZChristopher R. Gabrielcgabriel@truelite.it
<p>Riportato da Andrea Padovan, viene suggerito di fare in modo che creand in octofuss un nuovo utente (che sia singolo, o in massa, o da CSV) gli vengano attribuiti tutti i net permissions, escluso lpadmin.</p>
<p>Attualmente il default e' di non fornire alcun permesso, quindi spesso viene dimenticato di farlo e gli utenti non possono svolgere le loro operazioni, comportando una chiamata per la verifica e poi la aggiunta successiva dei permessi mancanti.</p>
La proposta e' di aggiungere automaticamente i permessi:
<ul>
<li>scanner</li>
<li>internet</li>
<li>cdrom </li>
<li>plugdev </li>
<li>audio</li>
<li>dialout (non attualmente presente nella lista di octofussd)</li>
</ul>
<p>Sono <strong>esclusi</strong>:</p>
<ul>
<li>lpadmin</li>
<li>wifi</li>
</ul>
<p>Non risultano richieste di togliere permessi, almeno su permessi relativi all'hardware.</p> fuss-client - Segnalazione #285 (Chiuso): Configurazione kerberos sul serverhttps://work.fuss.bz.it/issues/2852017-06-07T10:42:24ZChristopher R. Gabrielcgabriel@truelite.it
<p>Nel processo di collegamento al server per la configurazione di kerberos ( <a class="external" href="https://work.fuss.bz.it/projects/fuss-client/repository/revisions/master/entry/ansible/roles/homes/tasks/main.yml#L134">https://work.fuss.bz.it/projects/fuss-client/repository/revisions/master/entry/ansible/roles/homes/tasks/main.yml#L134</a> e seguente ) e' hardcoded l'uso dell'utente root.</p>
<p>La policy prevede che le utenze siano personali con l'uso di sudoer.</p>
<p>Quindi il tecnico non necessariamente ha a disposizione la password di root del server, impedendogli cosi' di poter configurare il client installato.</p>
<p>La proposta, discussa oggi con il personale di ripartizione 9 assieme a Massimo Previdi, e' la seguente:</p>
<ul>
<li>Introdurre una opzione alla command line di fuss-client per specificare l'utente con cui ci si collega al server ( es. '''fuss-client -a -u andrea''')</li>
<li>Questo utente verra' utilizzato per collegarsi al server, e il comando eseguito lo sarĂ attraverso l'uso di <strong>sudo</strong></li>
<li>Se l'opzione da command line non viene fornita, utilizziamo, come adesso, l'utente root senza far ricorso a sudo.</li>
</ul> fuss-server - Segnalazione #284 (Chiuso): Commento di esempio per dhcp-reservationshttps://work.fuss.bz.it/issues/2842017-06-07T09:12:47ZChristopher R. Gabrielcgabriel@truelite.it
<p>Il file /etc/fuss-server/dhcp-reservations, creato da fuss-server create e utilizzato come include dal server dhcp, sarebbe comodo se include, come commento, un esempio di configurazione (come presente anche sul wiki come documentazione) per poter avere un riferimento anche offline.</p> PyHearing - Segnalazione #59 (Nuovo): test coveragehttps://work.fuss.bz.it/issues/592016-06-28T10:53:48ZChristopher R. Gabrielcgabriel@truelite.it
<p>Per un porting ottimale, implementare test suite per ogni modello e vista rilevante, per avere una copertura totale.</p>
<p>Attuale stato di coverage:</p>
<pre>
Name Stmts Miss Cover
----------------------------------------------------------
hearings/__init__ 0 0 100%
hearings/admin 22 0 100%
hearings/forms 47 47 0%
hearings/models 138 63 54%
hearings/tests 4 0 100%
hearings/urls 3 3 0%
hearings/views 154 154 0%
pyhearing/__init__ 0 0 100%
pyhearing/context_processors 3 3 0%
pyhearing/management/__init__ 0 0 100%
pyhearing/settings 42 0 100%
pyhearing/templatetags/__init__ 0 0 100%
pyhearing/templatetags/pyhearingtags 8 8 0%
pyhearing/urls 6 6 0%
pyhearing/views 72 72 0%
pyhearing/wsgi 7 7 0%
----------------------------------------------------------
TOTAL 506 363 28%
</pre>
<p>Suggerisco di aprirti ticket specifici correlati, ognuno con suo feature branch, per gestire questi aspetti di lavorazione.</p> PyHearing - Segnalazione #58 (Chiuso): Fix per PEP8https://work.fuss.bz.it/issues/582016-06-28T08:07:05ZChristopher R. Gabrielcgabriel@truelite.it
<p>Ho visto cose tipo</p>
<pre>
-BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+BASE_DIR = os.path.dirname( os.path.dirname( os.path.abspath( __file__ ) ) )
</pre>
<p>in commit a5c26366ead8a3c409af75973896569a416e70b3</p>
<p>Tutti il codice deve passare senza errori i controlli di pep8.</p> PyHearing - Segnalazione #9 (Chiuso): Testo email promemoriahttps://work.fuss.bz.it/issues/92013-10-02T14:20:19ZChristopher R. Gabrielcgabriel@truelite.it
<p>L'attuale testo promemoria inviato ai genitori il giorno prima del loro appuntamento e':</p>
<pre>
---------- MESSAGE FOLLOWS ----------
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: Promemoria appuntamento
From: cgabriel@truelite.it
To: parent00@email.it.invalid
Date: Wed, 02 Oct 2013 14:16:33 -0000
Message-ID: <20131002141633.20469.3091@fili.localdomain>
X-Peer: 127.0.0.1
Gent. parent00,
Le ricordiamo il suo appuntamento per il giorno 03/10/2013
dalle ore 08:00 alle ore 10:00, con il nostro docente teacher00.
Cordiali saluti
------------ END MESSAGE ------------
</pre>
<p>Da verificare se forma e contenuto sono corretti.</p>