?Discussion


Accesso CVS ad Alioth

La gestione della pagine web del sito Debian è documentata, seppur in modo essenziale, qui, c'è però bisogno di aggiungere un particolare tanto banale quanto tutto sommato essenziale.
Nella sezione che spiega come usare CVS per effettuare il checkout, ovvero il mirror locale delle pagine in formato .wml, viene riportato un collegamento a fondo pagina su come ottenere l'accesso in scrittura al repository CVS richiedendo di far parte del progetto Alioth webwml.
Si aprirà una pagina che richiede di effettuare il login, ed è proprio qui che può nascere il disguido; per chi non è ancora iscritto ad Alioth questo significa scegliere di creare un nuovo account, compilare il form, ricevere un messaggio di iscrizione avvenuta e attendere l'email che validerà l'operazione.
Dopodiché se non ci si ricorda di tornare alla pagina che spiega come usare CVS e cliccare nuovamente sul link detto poc'anzi (ovvero questo) ci troveremo con un account privo delle credenziali sufficienti ad accedere tramite cvs e ssh.
Ciò non avviene se si ha già un account, in quanto una volta effettuato il login si verrà automaticamente indirizzati alla pagina voluta, ovvero quella dove fare la vera richiesta di appartenere al gruppo webwml.

Un'altra mancanza è l'impostazione della variabile CVS_RSH, si può trovare una breve descrizione a questa pagina, per comodità è bene inserire il comando export CVS_RSH=ssh nel file $HOME/.profile.

Generalmente è sufficiente avere il mirror dell'albero english e italian e di alcuni script utili contenuti nella directory principale, ecco dunque i comandi per ottenere il checkout parziale come utente anonimo:

$ cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/webwml checkout webwml/english webwml/italian
$ cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/webwml checkout -l webwml

e come utente registrato (nomeutente ha sempre il suffisso -guest, ad esempio skizzhg-guest):

$ cvs -d :ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml checkout webwml/english webwml/italian
$ cvs -d :ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml checkout -l webwml

Verrà creata una directory webwml nel percorso in cui si eseguono i comandi, nel caso non si volesse tenerla nella home ricordarsi quindi di spostarsi altrove. In futuro i comandi andranno eseguiti all'interno di questa directory.

Nei successivi aggiornamenti bisognerà sempre specificare le directory altrimenti verrà scaricato l'intero albero:

$ cd /percorso/directory/webwml
$ cvs update -d english italian

Un esempio per un cronjob che aggiorna tre volte la settimana potrebbe essere così:

11 11 * * 1,3,5 cd /percorso/directory/webwml && /usr/bin/cvs -Q update -d english italian




TODO

Verificare che il cronjob funzioni :)
Oltre a CVS_RSH va spiegato come impostare CVSROOT, dovrebbe essere qualcosa come export CVSROOT=:ext:nomeutente@cvs.alioth.debian.org:/cvsroot/webwml