Continuous Integration for Everybody

Das Tooling für schnell einsatzfähige Continous Integration ist nicht schwer, am Beispiel eines Java-Projekts mit Maven, Jenkins und GitLab zeigte uns Thomas, wie bei ONE LOGIC Code Qualität sichergestellt wird.

Am 21. Juni besuchte uns unser ehemaliges Mitglied Thomas Stieglmaier von ONE LOGIC, um uns zu zeigen, dass Continuous Integration (CI) einfach, schnell und für jeden verwendbar ist. Hierzu begann er mit einer Übersicht über den Software-Entwicklungs-Prozess, der bereits vor dem ersten Commit beginnt, sich mit mehrmaligen Code Reviews bis hin zum nächsten Release fortsetzt und danach wieder von vorne beginnt. Ein mächtiges und häufig verwendetes Tool für das Management eines Software Projektes ist Maven. Maven zeichnet sich unter anderem dafür aus, in IDEs integriert zu sein, sowie eine gute Verwaltung für Abhängigkeiten zu haben. Dabei ist das entstehende Build-Skript weder groß noch komplex aufgebaut. Zur Sicherstellung der Codequalität können diverse Tools eingebunden und verwendet werden, um jederzeit auf dem Laufenden der Entwicklung der betreffenden Software zu sein. Als Build-System für CI hat uns Thomas zwei Tools vorgestellt: GitLab und Jenkins. Beide unterstützen die wichtigesten Funktionen, um CI betreiben zu können. Für gelegentliche und kleine Projekte im privaten Bereich ist GitLab wohl die geeigneste Wahl, da nicht viel selbst vorbereitet werden muss. Im Business Umfeld kommt man jedoch kaum um Jenkins herum, da dieses mächtiger ist und mehr Details für beispielsweise Fehlermeldungen liefert, aber auch schwieriger einzurichten ist. Abgerundet hat Thomas den Vortrag mit einer anschaulichen Livedemo inklusive Konfigurationsbeispielen. Anschließend lud uns ONE LOGIC noch zum Pizza-Essen ein, wo wir den Abend ausklingen ließen.

Der Code zur Livedemo ist unter folgendem Link zu finden:

https://gitlab.com/stieglma/ciSamples

Die Folien zum Vortrag könnt ihr hier herunterladen:

Continuous Integration for Everybody