Buildbot
- Author
- Andi Albrecht
Zusammenfassung
Pad zur Buildbot-Session von - @andialbrecht Thema: Continous Integration ("CI")
Buildbot "lauscht" auf Änderungen im source-code und kann dann Aktionen triggern Typische Anwendung sind automatische builts (zB mit verschiedenen Py-Versionen) sowie Tests
Buildbot ruft Prozesse auf und wertet Rückgabewerte aus -> Fehler oder OK
Ansicht web-basiert : Waterfall - chronologische ansicht von changes und tests
Installation ist relativ einfach - @andialbrecht hat Kurz-Doku erstellt - demnächst per blogpost...
i.W. pip install buildbot
Konfiguration ist zweigeteilt: master-Konfiguration und client-Konfiguration
Wichtig ist master-cfg - ist leider etwas unübersichtlich @andialbrecht hat hier Template für eigene buildbot-Konfiguration erstellt
- - z.B. auf besondere Umstände (wie nur SVN-Repos) vorkonfiguriert erster Schritt: Parameter "nach oben" - z.B. PYTHON-VERSIONs buildbot-Konfiguration (Dictionary 'c') wird "weiter unten" erstellt... nächster Schritt (sinnvoll/geplant) wäre: py-script was anhand einer kurzen config die master-cfg erstellt
Konfiguration besteht aus Schedulers und Builders Scheduler: definiert wie Änderungen erkannt werden
Builder: definiert Schritte (Steps) die bei Änderungen ausgeführt werden sollen (z.B. unit-tests)
Diskussion: was ist Vorteil/Nachteil von Buildbot im Vergleich zu Hudson/Jenkins? Eindruck: Hudson ist sehr anwenderfreundlich - wird bspsw. über Web-GUI konfiguriert. Buildbot ist eher ein "Framework" um Continous Integration selber aufzubauen... ausserdem Python-basiert und somit für Python-Freunde gut erweiterbar ,-)
Buildbot im Netz: http://trac.buildbot.net/ Hudson/Jenkins: http://hudson-ci.org/ // http://jenkins-ci.org/