Erfolgreiche moderne Software-Projekte brauchen eine passende Deployment-Strategie und eine saubere Release-Verwaltung. Eine CI-Pipeline aus Git, Jenkins und Nexus bilden ein stabiles Fundament und macht kleine wie auch große Projekte beherrschbar.
Marco Schulz hat selbst jahrelange Praxiserfahrung und zeigt Ihnen in diesem Buch, was gutes Source-Control-Management ausmacht. Er zeigt, wie Sie Jenkins-Jobs schreiben und für ein zuverlässiges Release-Management sorgen. Behalten Sie Ihre Projekte im Griff, inklusive flächendeckender Softwaretests und einer sinnvollen Qualitätskontrolle bis zum sauber organisierten Deployment.
Continuous Integration verstehen
Jenkins einrichten
CI-Pipelines aufbauen
Artefakte verwalten
Das bietet Ihnen dieses Buch
The Big Picture
DevOps, Unit-Tests, semantische Versionsnummern ... ist das alles wirklich nötig, wenn es um ein paar Zeilen Java geht? Marco Schulz demonstriert Ihnen die Vorteile einer CI-Pipeline, klärt Begriffe und begleitet Sie beim Einstieg.
Toolchains für Software-Projekte
Jenkins ist das wichtigste Werkzeug, wenn es um CI-Pipelines und automatisierte Builds geht. Hier finden Sie aber noch mehr: Git, Maven, Nexus, SonarQube und andere Tools helfen Ihnen bei der Verwaltung Ihrer Codebasis.
Gute Code-Verwaltung
Beim Integrieren von neuen Features in bestehende Projekte kann viel schief gehen. Daher dreht sich hier alles um saubere Unit- und Integrationstests, gutes Release-Management und das Vermeiden von Merge-Konflikten.
Code- und Konfigurationsbeispiele aus dem Buch stehen zum Download bereit.
Aus dem Inhalt
Jenkins in 10 Minuten
The Big Picture: DevOps und die Softwareentwicklung
Test Driven Development, Unit- und Integrationstests
Grundkonfiguration, Benutzerverwaltung und Plug-ins
Build-Management
Jenkins-Jobs schreiben, optimieren und automatisieren
Pipelines mit Blue Ocean
Qualitätskontrolle mit SonarQube
Repository-Management mit Nexus
Vieles versteht man am besten an einem Beispiel. Darum startet diese Leseprobe direkt mit dem ersten Build-Job, auch wenn die Details erst in späteren Kapiteln ausführlich behandelt werden. Der zweite Teil beschäftigt sich mit dem wichtigen Thema Softwaretests. Wirkungsvolle Testautomatisierungen gehören zu den essenziellen Konzepten von Jenkins, denn Fehler in produktiven Systemen können erheblichen Schaden anrichten.
Wer hat's geschrieben?
Marco Schulz studierte an der HS Merseburg Diplominformatik und twittert regelmäßig als @ElmarDott über technische Themen. Seine Schwerpunkte sind Build- und Konfigurationsmanagement, Software-Architekturen und Release Management. Seit über fünfzehn Jahren realisiert er anspruchsvolle Entwicklungsprojekten für namhafte Unternehmen aus aller Welt und arbeitet als unabhängiger Consultant/Trainer. Sein Wissen teilt er mit anderen Technikbegeisterten auf Konferenzen, wenn er nicht gerade wieder einmal an einem neuen Fachbeitrag schreibt.