In der Oktober/November-Ausgabe des JavaSPEKTRUMs ist ein Artikel von Holisticon-Mitarbeiter Martin Reinhardt über Continuous Delivery erschienen, der sich mit immer kleineren Komponenten im IoT und Microservices Umfeld befasst. Durch den verstärkten Trend zur inkrementell-iterativen Softwareentwicklung in vielen Unternehmen müssen auf einmal viele Zwischenstände einer Software qualitätsgesichert werden. Diese Kette aus Entwicklung, Qualitätssicherung und Auslieferung wird durch die engen Zeitfenster für Tests auf eine harte Probe gestellt. Die beiden aktuellen Trendthemen Internet of Things (IoT) und Microservices verstärken diesen Trend nochmals, weil dadurch zusätzliche Artefakte erstellt und weiterentwickelt werden.
Bei Umsetzung innerhalb von Jenkins sind dabei verschiedene technische und konzeptionelle Vorbereitungen zu treffen, um eine Continuous Delivery (CD) umzusetzen, die auch sicherstellt, dass die einzelnen Puzzleteile der Software zusammenpassen.
In Java helfen einen viele Bibliotheken kontinuierliche Änderungen umzusetzen, z.B. Flyway im Rahmen von der Datenbank-Migration. Außerdem kann man mit dem Pipeline-Plugin von Jenkins Build-Skripte in einer DSL beschreiben und mitversionieren. Um einzelne Module/Services integriert zu testen bietet sich Docker in Verbindung mit Serenity zur Oberflächen-Steuerung an. Dieser Artikel stellt das Vorgehen an einem Github-Projekt vor und steht auch als Beispiel-Projekt in Jenkins aufrufbar.
Die Ausgabe 5/2016 ist seit dem 16. September am Kiosk oder online verfügbar.