Continuous integration eine Einführung für Unkundige

Post on 27-Jul-2015

41 views 4 download

Transcript of Continuous integration eine Einführung für Unkundige

Continuous Integration -

eine Einführung© Axel Burghof, https://plus.google.com/+AxelBurghof, November 2014

Continuous Integration bezeichnet das automatische Bauen, Testen, Installieren von und Berichten über Software bei jedem Integrieren einer Quellcode-Änderung.

Was ist “CI”?

Wer ist eigentlich dieser Herr

Quelle: jenkins-ci.org

● Build, Deploy, Test per Script - Gradle● Auslösung bei Commit - Jenkins● Bericht über Ausführung - Jenkins

o Log über Svn Update, Script-Ausführungo JUnit Report

Wie funktioniert CI?

SVNlokale Änderungen

CI ServerCommit Deploy, Test

Reports

Integrationsumgebung

● Schnelle Rückmeldung über Verträglichkeit von Änderungen● Fehler sofort schnell behebbar● Deshalb die vielen Mails von Jenkins

Jenkins-Build fehlgeschlagenJenkins-Build ist wieder normal

● Automatisierung

Warum CI? Gefahr erkannt - Gefahr gebannt

Wie siehts aus?

schauen wir einfach mal rein…

● Commit -> Jenkins CI-Job läuft an● Build fehlerfrei -> Commit ok● Fehler -> Mail -> Ursache abstelleno Job Run Log: Svn Update, Script-Ausführungo JUnit Report: Stacktraces, stdout, stderro Korrektur committen -> nächster Laufo -> Mail Jenkins Build ist wiederhergestellt

Wie fühlt es sich an?erstmal alles wie bisher, aber mit Hinweis auf Fehler

● Tests -> Änderungen abgesichert● Automatisieren -> Handarbeit reduziert● Reports nutzen -> Verlauf erkennbar

Wie mache ich mir das zunutze?

Zusammenspiel der Komponenten

Commit

SVNlokale Änderungen

CI-ServerIntegrationsumgebung / CI-Server

Installations-dateien

Lokal

Build, Test, Deploy Lokal

Reports