BuildBot
Da Drizzle Wiki.
Indice |
[modifica] Panoramica
Se Drizzle avrà successo sarà grazie ai contributi della comunità. Non devi per forza essere un programmatore per contribuire, ci sono altre attività utili come il testing, la documentazione e i contributi al processo di building.
Contribuire come buildbot slace aiuta gli sviluppatori di Drizzle a testare il programma con una più vasta gamma di diverse configurazioni.
[modifica] Setup
Per far girare un buildbot slave:
- Installa Buildbot (link in inglese)
- Installa Bazaar (da usare per ottenere i sorgenti da LaunchPad)
- Assicurati che tutte le dipendenze siano a posto
- Manda una mail a drizzlebuild @ 42sql dot com con le seguenti informazioni:
- Nome (esempio: Mario Rossi)
- Sistema operativo - nome versione architettura (CentOS 5 64bit)
- uname -a
- Quando riceverai una risposta, avrai un nome Buildbot (centos5_64) e una password
- Segui le seguenti istruzioni.
# # Crea un utente separato4 # # Raccomandato ma non obbligatorio creare un utente separato # su - useradd buildbot su - buildbot # # Crea slave # buildbot create-slave /home/buildbot/slave drizzlebuild.42sql.com:9989 [slavename] [password] cd /home/buildbot/slave/info echo "Put Your Name Here < and some cryptic email text> ” > admin echo “Drizzle - Name Version & Architecture “`uname -a` > host cat admin host # # es. "Ronald Bradford < ronald.bradford @ Google Mail >" # es. "Drizzle - CentOS 5 64bit - # # # Avvia lo slave # # cd /home/buildbot/slave buildbot start /home/buildbot/slave > start.log tail -f /home/buildbot/slave/twistd.log
Se tutto funziona otterrai immediatamente un output, come lo stato delle Drizzle Build Slaves
Ulteriori dettagli (in inglese) su Building sources with BuildBot
[modifica] (Opzionale) Aggiungi uno script a /etc/init.d
Se hai seguito tutte le istruzioni fornite nell'utilissimo articolo di Ronald Bradford può darsi che tu abbia aggiunto l'opzione @reboot al tuo cron. Questo è un modo per lanciare buildbot all'avvio. In alternativa potresti aggiungere uno script in /etc/init.d/ che avvia e ferma buildbot rispettivamente all'avvio e all'arresto del server.
#crea lo script nano /etc/init.d/drizzle-buildbot.sh
#! /bin/sh
#set path
PATH=/sbin:/bin:/usr/bin
#functions (adjuct to suit your paths)
do_start () {
cd /home/buildbot/slave
buildbot start /home/buildbot/slave > start.log
}
do_stop () {
cd /home/buildbot/slave
buildbot stop /home/buildbot/slave
}
case "$1" in
start|"")
do_start
;;
stop)
do_stop
;;
*)
echo "Usage: drizzle-buildbot.sh start|stop" >&2
exit 3
;;
esac
Ora devi solo creare un symlink a questo script nella directory /etc/rc2.d :
#crea symlink ln -s /etc/init.d/drizzle-buildbot.sh /etc/rc2.d/S99drizzle-buildbot.sh
Ora, ogni volta che avvii il sistema, buildbot partirà.
[modifica] Impostare i percorsi di ricerca
Se la configurazione del tuo buildbot fallisce perchè non riesce a trovare le dipendenze necessarie, potresti impostare l'ambiente predefinito del tuo utente buildbot.
Per GCC puoi impostare CPATH e LIBRARY_PATH per aggiungere altre directory di ricerca a quelle di default.
Questo ti permette di installare ad esempio libevent in un posto non standard e riuscire comunque a diventare un buildbot slave senza modificare i tuoi percorsi standard.
[modifica] Problemi con Buildslave
Se sei sicuro di avere tutte le dipendenze che sono elencate qui e il tuo slave ha ancora problemi, leggi la pagina problemi di Buildslave.
