Des fois, comme par miracle, une box avec plein de cycles cpu inutilisés vous tombe sur les bras, elle est déja rackée et idle gentiment. Bah, pourquoi pas lui faire builder des ports en continu ?

Pour ca quelques détails :

SUDO=/usr/bin/sudo -E                                    
USE_SYSTRACE=Yes
CDIAGFLAGS=-Wall
WARNINGS=Yes
PLIST_DB=/usr/ports/plistdb
WRKOBJDIR=/usr/obj/ports
screen (what else)
mkdir -p /usr/ports/logs/`arch -s` # on crée le répertoire de logs
cd /usr/ports
./infrastructure/build/dpb 2>&1 | tee bulkbuild.log

Et voilaaa.. reste plus qu'a attendre (10j pour un xserve g4 ppc, 1j pour un quad-core jackytuné) … On peut suivre l'avancement avec ls -1 /usr/ports/logs/`arch -s` | wc -l. dpb va tout d'abord faire une liste de tout les ports avec leurs dépendances, puis distribuer les compilations via ssh sur les différentes machines.

Et évidemment a la fin les packages sont dans /usr/ports/packages/`arch -s`/ .. reste plus qu'a configurer ftpd. Et nettoyer /usr/obj. Et désinstaller les 1200 packages qui ont été installés au passage pour builder tout ca. Hint: rm -Rf /usr/local /var/db/pkg pour les bourrins, cd /var/db/pkg && pkg_delete `ls -1` pour ceux qui sont plus propres. Ca permet de voir si des ports laissent des trucs derrière eux quand on les désinstalle..

Si on ne veut pas utiliser dpb (faut dire que c'est trop simple), la commande suivante devrait faire pareil:

cd /usr/ports
make package BULK=Yes BATCH=Yes REPORT_PROBLEM=true 2>&1 | /usr/ports/infrastructure/build/portslogger /usr/ports/logs/`arch -s`

thx ajacoutot pour les conseils au passage..

openbsd/bulk_build.txt · Last modified: 2010/01/12 13:29 (external edit)