Tempo fa avevamo discusso e lavorato insieme per fare un prototipo che recuperasse le info dai device per metterle dentro nodeshot.
Come promesso, in questo fine-settimana ho cominciato ad estrarre quel codice e a spostarlo in un repository separato. Ispirato da "mongoengine" ho chiamato la libreria "netengine". L'obiettivo è fare un livello d'astrazione per estrarre informazioni dai device. Un pò come si fa con i database. https://github.com/nemesisdesign/netengine EsempioSNMP: from netengine.backends.snmp import AirOS device = AirOS('10.40.0.1', community='public') device.name 'RM5PomeziaSNode' device.model 'Rocket M5' device.os ('AirOS', 'XMar7240.v5.3.3.sdk.9634.1111221.2238') Esempio SSH: from netengine.backends.ssh import AirOS device = AirOS('10.40.0.1', 'root', 'password') device.name 'RM5PomeziaSNode' device.model 'Rocket M5' Non mi sembra di aver visto librerie in giro che fanno una cosa simile. Da quello che ho visto, mi pare che il networking sia rimasto parecchio indietro su molte cose. Si usano standard complicati e i dati sono difficili da parsare e tra l'altro variano da distribuzione a distribuzione. Ho visto dei miglioramenti per quanto riguarda i tools delle community network, in particolare OLSR e batman offrono degli output di dati in JSON, che è ottimo. Questa è la via da seguire. Questo è il mio tentativo di spingerci oltre e fare qualcosa che sarà utile non solo a noi ma anche ad altri. Portiamo una ventata di novità, degli strumenti utili, facili da usare e codice facile da leggere. NetEngine è python puro. Non c'è logica django, nonc'è nodeshot, è molto semplice. Ho subito scritto la documentazione dentro il README e sono sicuro che se leggete il codice lo capirete molto velocemente. Ovviamente è ancora ad uno stadio prematuro, ma ci lavorerò man mano che vado avanti e spero vivamente in un vostro aiuto. Mi piacerebbe che questo diventi uno strumento targato ninux, ma perchè questo avvenga c'è bisogno del vostro contributo attivo. Molti di voi hanno molta più esperienza di me sul networking. Stavolta non avete scuse. Non potete dire cose tipo "è troppo difficile", "non conoscodjango", "non c'è documentazione", ecc. Venite fuori dalla comfort zone ed aiutatemi a fare qualcosa che a mio avviso sarà utilissimoper molte persone. Dopo questo annuncio le successive discussioni su questo tema facciamole su ninux-dev: http://ml.ninux.org/mailman/listinfo/ninux-dev Nemesis
_______________________________________________ Wireless mailing list Wireless@ml.ninux.org http://ml.ninux.org/mailman/listinfo/wireless