Deployment su Sebeto (Shell Script)

Salve a tutti!

Di recente molti studenti (incluso me) all'università, stanno lamentando il fatto di non saper configurare NetBeans per il deployment sul server sebeto, come suggerito dal prof. Montella.

Non ho configurato NetBeans, bensì ho fatto una cosa più divertente . Ho scritto uno shell script che copia i files indicati nel path (o direttamente una cartella)  nella vostra home sul server students.uniparthenope.it. 

Per farvi capire meglio:

Avete dei files o delle cartelle che volete copiare sul vostro spazio personale? Bene. Avviato lo script, esso usa il comando di sincronizzazione remota di files, rsync, per copiare tutti i files contenuti nella directory che potete fornirgli, in una cartella nella vostra home sul server, chiamata "ultimi_file_copiati".

Lo script si chiama deploy e prende in input la matricola di uno studente oppure lo username di un amministratore o docente, ed anche la directory contenente i files da copiare. 

Grazie alle espressioni regolari, il formato della matricola accettato, sarà 0...000...., mentre quello dei docenti/amministratori nome.cognome.

Breve delucidazione su come lanciare lo script:

Assumendo che vi troviate nella cartella dove è situato lo script, digitate:

./deploy  numero_matricola  path_files

ad esempio:

./deploy 0101010101 /users/utente/programmi/files_da_copiare/

Questo script è compatibile soltanto con sistemi Unix/Linux!

Ecco lo script:

deploy.rar

Commenti

Ritratto di Fabio Nisci

Bravo! ...anche se non hai citato il beta tester :P 
comunque apprezzo che tu abbia completamente escluso altri sistemi operativi inferiori! XD

----------------
Buon intuito e abilità nel trovare soluzioni ideali ai problemi dei progetti.
www.fabiosoft.com

Ritratto di Giuseppe Persico

Giustissimo! Dimenticavo di citare il primo beta tester: Fabio Nisci! 
Stavamo giusto pensando di progettarne una versione avanzata! 

Ritratto di Diego Caridei

Ottimo lavoro!!!!

Ritratto di Salvatore De Michele

è inutile tra l'altro parlare di una soluzione del genere su sistemi Windows, dato che c'e bisogno di software come putty per il servizio SSH. E' comunque una soluzione al problema. Ottimissimo come sempre. Attendiamo una GUI adesso

Ritratto di Giuseppe Persico

Concordo!
sto progredendo nello studio di java, a breve potremmo convertirlo usando una GUI ;)
per quanto riguarda windows servirebbe un batch file, ma a questo punto è inutile.

Ritratto di Flavio Tulino

Io ho configurato il deployment automatico su Netbeans.
La cosa però funziona solo con gli script PHP.
http://students.uniparthenope.it/?q=node/178

Ritratto di Giuseppe Persico

Sisi ho letto! Ben fatto! smiley

In che senso funziona soltanto per gli script php? Effettua il deploy soltanto per gli script php?

Ritratto di Flavio Tulino

Si giuseppe, quando scegli di sviluppare una app Java, non ti da la possibilità di settarlo per il deploy automatico.
Forse perchè in teoria non serve hostarlo su un server per far funzionare la cosa.
Spero ci sia un altro modo.

Se il tuo script funzionasse anche su win sarebbe perfetto!
PS. provato su ubuntu, perfetto!

Ritratto di Giuseppe Persico

Mi fa piacere che tu abbia trovato lo script utile smiley

Su Windows dovremmo creare un batch file (l'equivalente di uno shell script su unix/linux)!

Ritratto di Giuseppe Persico

Oppure una valida alternativa per gli utenti Windows potrebbe essere installare OpenSSH e lanciare il comando SCP (secure copy, che è un comando di copia basato sul protocollo SCP). 

Oppure se odiate il terminale, scaricatevi WinSCP (che fa le stesse cose solo che è ad interfaccia grafica)

Ritratto di Raffaele Montella

... Ragazzi, continuate così!
Questo progetto serve per stimolare lo sviluppo di soluzioni!
Un'altra soluzione potrebbe essere montare la propria home come volume su ssh come indicato qui: http://www.danbishop.org/2011/09/10/how-to-mount-sftp-ssh-shares-in-os-x...
Ho appena provato, ma con il mio account raffmont accede in lettura, ma ha problemi in scrittura.
Magari con un po' di prove si può risolvere.
Anche sotto Windows o Linux è possibile fare altrettanto.
Tenetemi aggiornato!
 

-----------------------
Raffaele Montella, PhD
Assistant Professor in Computer Science
Department of Applied Science
University of Napoli Parthenope
 

Ritratto di Giuseppe Persico

Ho provato il metodo da Lei proposto, e sembra essere un'altra ottima soluzione! Soltanto che per attuarla si devono scaricare ed installare i programmi elencati nel link, ovvero OSXFuse e MacFUSE. Ed inoltre è vincolata alla singola piattaforma OSX (anche se su sistemi Linux potremmo montarla come volume di rete senza installare nessun programma). Ho pensato allo script perchè è leggero, non richiede l'installazione di programmi di terze parti e si avvia in maniera semplice. Quale soluzione Le da i permessi di sola lettura? Quella da Lei proposta o lo script che ho pubblicato? 

Attendo ulteriori commenti per cercare di migliorare ancora lo script :)