How-to import a BaBar SW release (at CNAF)


IMPORT and INSTALLATION

Importiamo la release dal server wn-05-01-01-a come utente speciale bbrsoft:

[bbrsoft@wn-05-01-01-a]$ cd $BFDIST/releases
[bbrsoft@wn-05-01-01-a releases] setenv BFDISTr galeazzi@noric.slac.stanford.edu:/afs/slac.stanford.edu/g/babar/dist
[bbrsoft@wn-05-01-01-a releases]$ srtpath current
[bbrsoft@wn-05-01-01-a releases]$ importrel -bap X.Y.Z (dura circa 10 minuti)
Si sceglie l'architettura fra quelle disponibili che trovo in /afs/slac.stanford.edu/g/babar/dist/releases/X.Y.Z/bin , p.es., Linux24SL3_i386_gcc323.
[bbrsoft@wn-05-01-01-a releases]$ importarch -fip X.Y.Z Linux24SL3_i386_gcc323 (dura in media un paio di ore)
Il dump su schermo deve finire con un "All segments were imported successfully."

Si puo' ora procedere con l'installazione:
[bbrsoft@wn-05-01-01-a releases]$ cd X.Y.Z
[bbrsoft@wn-05-01-01-a X.Y.Z]$ srtpath X.Y.Z Linux24SL3_i386_gcc323
[bbrsoft@wn-05-01-01-a X.Y.Z]$ gmake siteinstall >& /opt/exp_software7babar/dist/relelases/log/log_X-Y-Z.txt
(Nota: il logfile rimane fuori release per non sporcarla, in una sottodir /log in cui accumularemo tutti i logfile di tutte le installazioni).
Con un "tail -f" controlliamo che mancano i "soliti" pacchetti
[qt(grafica), mysql, ed altri applicativi che non richiedono pero' shared libraries (questo e' l'importante)].

Un modo piu' comodo di controllare che sia tutto a posto (piu' o meno) e':
cat ../log/log_X-Y-Z.txt | grep -v -e Mangling -e GEANT -e geant -e 'commands for target' -e klog | less
dove l'opzione -e esclude gli errori che ci aspettiamo e non sono cruciali: cio' che rimane deve pero' filare liscio come l'olio!

Non affronto qui (per ora) il meccanismo del BFOVERRIDE (che tipicamente e' da intendersi come una soluzione temporanea).

In modo del tutto analogo si procede poi (eventualmente) con la "letterata".

A questo punto non resta che propagare su tutti i server che vogliamo/dobbiamo.
In particolare si propaga verso la wn-05-01-02-a e la bbr-mngserv.
Il resto della propagazione verra' effettuata dalla bbr-mngserv verso altri server, fra cui le macchine di front-end e il server di repository centrale del SW.

Ripetere per bbr-fe03 (ed eventualmente per bbr-fe02: non e' necessario)

Non rimane che rsyncare la nuova release sulla repository centrale del SW di BaBar che viene automontata dai nodi.

Tale repository e' sul server software1.cr.cnaf.infn.it:/data/lcgsoft/babar;
ed in effetti il mount point statico sulla bbr-datamove03 e':
...
/dev/sda2 419G 33M 398G 1% /kanga/d1
...
software1.cr.cnaf.infn.it:/data/lcgsoft/babar 392G 208G 164G 57% /kanga/d1/software1

Bisogna precisare che non vi e' motivo reale di montare tale area staticamente.
Infatti basterebbe montarla (mount -t nfs ...) in occasione dell'update delle release per poi smontarla (umount /kanga/d1/software1).

Ad ogni modo per l'update si procede cosi' (dalla bbr-mngserv, come utente bbrsoft):

rsync -a -v -e ssh /soft/bfroot/dist/releases/X.Y.Z/ bbr-datamove03:/kanga/d1/software1/dist/releases/X.Y.Z/
rsync -a -v -e ssh /soft/bfroot/dist/releases/X.Y.Zb/ bbr-datamove03:/kanga/d1/software1/dist/releases/X.Y.Zb/
rsync -a -v -e ssh /soft/bfroot/dist/packages/ bbr-datamove03:/kanga/d1/software1/dist/packages/


$BFDIST CLEANUP on SW servers

La riorganizzazione periodica delle release (con cancellazione delle vecchie) e' tipicamente server-dependent.

L'unica repository dove (almeno per ora) non si cancella nulla sono:

- sulla bbr-mngserv (/soft/bfroot/dist/...)
- sull'area del BABAR-SW () montata staticamente sulla bbr-datamove03

Supponiamo di voler cancellare vecchie release sulla wn-05-01-01-a:

- entrati nella macchina: su - bbrsoft
- [bbrsoft@wn-05-01-01-a] rm -rf $BFDIST/releases/X.Y.Z
- eventualmente anche: [bbrsoft@wn-05-01-01-a] rm -rf $BFDIST/releases/X.Y.Zb
- [bbrsoft@wn-05-01-01-a] cd $BFDIST/packages
- [bbrsoft@wn-05-01-01-a] srtpath current (o newest a seconda delle architetture disponibili)
- [bbrsoft@wn-05-01-01-a /opt/exp_software/babar/dist/packages] DistPurge -y (per eliminare i relativi pacchetti!)

Back to main page.

Last update: 13-Nov-2006