Project

General

Profile

Segnalazione #244

oconet isc-dhcp-server

Added by Michael Guggenberg over 7 years ago. Updated over 7 years ago.

Status:
Chiuso
Priority:
Normale
Start date:
04/28/2017
Due date:
% Done:

100%

Estimated time:

Description

Octonet non da possibilità di creare lease statici per dhcp server o cancellare leases.

https://github.com/CygnusNetworks/pypureomapi
http://jpmens.net/2011/07/20/dynamically-add-static-leases-to-dhcpd/


Related issues

Related to fuss-server - Segnalazione #242: isc-dhcp optionsCommenti04/27/2017

Actions

Associated revisions

Revision 225eea74 (diff)
Added by Mark Caglienzi over 7 years ago

Change title. refs: #244

Revision 436c600b (diff)
Added by Mark Caglienzi over 7 years ago

Add dhcp_base.html. refs: #244

Revision 27ae1f6d (diff)
Added by Mark Caglienzi over 7 years ago

Add static entry list view. refs: #244

Revision 34866e71 (diff)
Added by Mark Caglienzi over 7 years ago

Add forgotten navbar. refs: #244

Revision abb9a26a (diff)
Added by Mark Caglienzi over 7 years ago

Add draft static entry update view. refs: #244

Revision f03d9008 (diff)
Added by Mark Caglienzi over 7 years ago

Add forgotten dhcp/forms.py, also draft. refs: #244

Revision b6bf72a9 (diff)
Added by Mark Caglienzi over 7 years ago

Use form-control and add explicit ugettext enabled labels. refs: #244

Revision 4d7fd0f6 (diff)
Added by Mark Caglienzi over 7 years ago

Better fields for the form. refs: #244

Revision 0626225a (diff)
Added by Mark Caglienzi over 7 years ago

Load initial, no error checking. refs: #244

Revision 3f6fe39f (diff)
Added by Mark Caglienzi over 7 years ago

Add form button. refs: #244

Revision d83aed43 (diff)
Added by Mark Caglienzi over 7 years ago

Take care of valid and invalid forms. refs: #244

Revision ea3a24c7 (diff)
Added by Mark Caglienzi over 7 years ago

Fix success_url. refs: #244

Revision d8c867d9 (diff)
Added by Mark Caglienzi over 7 years ago

Do not accept . refs: #244

Revision b80cb387 (diff)
Added by Mark Caglienzi over 7 years ago

Draft StaticEntryCreate (hostname validation not working). refs: #244

Revision eb3e2c3e (diff)
Added by Mark Caglienzi over 7 years ago

Add button. refs: #244

Revision 64abf105 (diff)
Added by Mark Caglienzi over 7 years ago

Implement the create in one call. refs: #244

Revision 33170bef (diff)
Added by Mark Caglienzi over 7 years ago

Draft StaticEntryDelete view. refs: #244

Revision 193881b2 (diff)
Added by Mark Caglienzi over 7 years ago

Add form and make the UI nice. refs: #244

Revision 6f717701 (diff)
Added by Mark Caglienzi over 7 years ago

Add the js confirmation alert. refs: #244

Revision 9281ddf0 (diff)
Added by Mark Caglienzi over 7 years ago

Implement StaticEntryDelete. refs: #244

Revision 10ac1304 (diff)
Added by Mark Caglienzi over 7 years ago

Fix dhcp tests. refs: #244

Revision fed93248 (diff)
Added by Mark Caglienzi over 7 years ago

Add minimal tests for the new dhcp views. refs #244 #151

Revision 15703ee7 (diff)
Added by Mark Caglienzi over 7 years ago

Check for duplicate mac and ip addresses in StaticEntryUpdate. refs: #244

Revision 5751e589 (diff)
Added by Mark Caglienzi over 7 years ago

Check for duplicate hostname, mac and ip addresses in StaticEntryCreate. refs: #244

Revision f6d8d239 (diff)
Added by Mark Caglienzi over 7 years ago

Fix tests. refs: #244

Revision fcb9f479 (diff)
Added by Mark Caglienzi over 7 years ago

Refactor get_form_kwargs() in a mixin, take care of all the use cases, and cleanup. refs: #244

History

#1

Updated by Elena Grandi over 7 years ago

#2

Updated by Christopher R. Gabriel over 7 years ago

  • Project changed from Nuovi Sviluppi to octonet
  • Assignee set to TRUELITE
#3

Updated by Mark Caglienzi over 7 years ago

  • Status changed from Nuovo to In elaborazione
  • Assignee changed from TRUELITE to Mark Caglienzi
#4

Updated by Mark Caglienzi over 7 years ago

  • Status changed from In elaborazione to Commenti
  • Assignee changed from Mark Caglienzi to Christopher R. Gabriel
fed93248:
  • Aggiunte le view per il CRUD delle entry statiche
  • Ho un po' rimaneggiato il template del plugin, con una navbar contenente i link per le due liste (dhcp leases e entry statiche) e per creare una entry statica
  • Per le entry statiche il form valida formalmente i mac address e gli ip, e rifiuta i caratteri punto "." nell'hostname (se si hanno richieste o suggerimenti per validazioni più fini o più stringenti, se ne può parlare)
  • L'edit di una voce fa cambiare mac address e ip, ma non hostname (perché l'hostname è la "chiave" a livello di octofussd), quindi se si sbaglia un hostname, si cancella la voce e la si ricrea
  • La cancellazione ha il solito popup di conferma e poi cancella direttamente
  • Fatte modifiche anche a octofussd per quel che riguarda lcreate() e ldelete() (che mancava), quindi anche il pacchetto octofussd sarà da rifare quando le cose di questo ticket saranno testate.
  • Il CRUD di queste entry statiche modifica il file dhcp-reservations

Codice di octonet pushato nel branch t244 e non mergiato, quello di octofussd direttamente pushato in master.

Pacchetti da rifare alla fine:
  • octonet
  • octofussd
#5

Updated by Christopher R. Gabriel over 7 years ago

  • Assignee changed from Christopher R. Gabriel to Mark Caglienzi

Ho verificato il tutto. Ho pushato in octofussd un parser piu' solido (perche' il file puo' anche essere modificato a mano...).

Per il resto, ma aggiungerei un altro validatore, che riguardi i duplicati, per evitare di inserire due volte lo stesso hostname, o stesso mac, o stesso ip.

#6

Updated by Mark Caglienzi over 7 years ago

  • Status changed from Commenti to In elaborazione
#7

Updated by Mark Caglienzi over 7 years ago

  • Status changed from In elaborazione to Commenti
  • Assignee changed from Mark Caglienzi to Christopher R. Gabriel
fcb9f479:
  • Aggiunto un mixin che curandosi di tutti i casi (cioè create e edit) passa al form gli hostname, gli ip, i mac presenti
  • Se si sta creando una entry, considera anche gli hostname, altrimenti considera soltanto gli ip e i mac
  • Se si sta modificando una entry, non considera quella attuale (perché se non modifico il mac, il mac risulterebbe duplicato) e nemmeno gli hostname (perché l'hostname non è modificabile dall'utente quando si fa edit di una entry)
  • L'init del form riceve i kwargs e si salva i dati come membri di self
  • Questi poi vengono usati dai rispettivi metodi clean() (che grazie all'ereditarietà dei form non contengono codice duplicato)
  • Ho corretto anche i test esistenti per queste view scritti nei giorni scorsi, che passano tutti
  • Ho fatto un po' di prove dei vari casi e mi pare che sia ok anche la webapp

Codice pushato nel feature branch e non mergiato.

#8

Updated by Christopher R. Gabriel over 7 years ago

  • Status changed from Commenti to In elaborazione
#9

Updated by Christopher R. Gabriel over 7 years ago

  • Status changed from In elaborazione to Commenti
  • Assignee changed from Christopher R. Gabriel to Michael Guggenberg

verificato, ed eseguito il merge.

Pubblicati i pacchetti octonet 0.2.24 e octofussd 8.0.34 che includono la gestione delle assegnazioni statiche via /etc/fuss-server/dhcp-reservations (incluso via dhcpd.conf).

#10

Updated by Michael Guggenberg over 7 years ago

  • Status changed from Commenti to Risolto
#11

Updated by Michael Guggenberg over 7 years ago

  • Status changed from Risolto to Chiuso
  • % Done changed from 0 to 100

Also available in: Atom PDF