Beschreibung
Continuous Integration, Deployment und Delivery mit Git, Maven und Jenkins
Zielgruppe: Nur für Unternehmen und Institutionen.Mit Continuous Integration (Kontinuierliche Integration) wird die Qualität einer Software im Entwicklungsprozess sichergestellt. Continuous Integration definiert einen Prozess, in dem die Bausteine Versionsverwaltung, Übersetzen, Kompilieren und Linken (Build-Prozess), sowie automatisierte Tests und Erstellung von Softwaremetriken „integriert“ sind. Durch das „Einchecken“ von Softwarecode in die Versionsverwaltung wird der gesamte Vorgang automatisch ausgelöst. Diese Veranstaltung zeigt, wie man mit GIT, Maven und Jenkins ein Continuous Integration-System aufbaut.
Kommende Starttermine
Inhalte / Module
- Git-Einführung und Übersicht
- Git-Installation und Konfiguration
- Git-Frontends
- SourceTree, GitKraken, Tower...
- Git-Integration in IDE
- Eclipse, IntelliJ, PHPStorm
- Grundsätzlicher Workflow mit Git
- Anlegen, Einchecken, Staging, Commiting
- Änderungen rückgängig machen
- Entfernte Repositories und Arbeiten im Team mit Git
- GitHub, Bitbucket, Beanstalk
- Branching, Merging & Co. mit Git
- Rebase, Reset
- Fortgeschrittener Workflow: gitflow
- Features, Hotfixes, Releases
- Best Practice
- Maven Grundlagen
- Projektstruktur
- Konventionen
- Projektobjektmodell
- Deklaration der Abhängigkeiten und Scope
- Maven Lifecycle
- Lokales und zentrales Maven Repository
- Wichtige Maven Plugins
- Surefire Plugin für JUnit
- Compiler Plugin
- Konfiguration von Maven
- Maven settings.xml für benutzerspezifische Einstellungen
- Maven Properties
- Semantic Versioning
- SNAPSHOT und Release Versionen
- Der Site Lifecycle von Maven
- Surefire Report
- ToDo-Liste
- Javadoc Report
- Erweiterte Grundlagen von Maven
- Profile
- Proxy-Konfiguration in der settings.xml
- Passwörter verschlüsseln
- Ersetzen von Schlüsselwörtern in Dateien (Filter)
- Multi-Module-Projekte mit Maven
- Standardkonfiguration mit Parent-POM
- Integration von Plugins für die Code-Generierung
- Zugriff von Maven auf Versionsverwaltungen (CVS, SVN, git, ClearCase, Mercurial, ...)
- Release-Erstellung mit Maven
- Release Plugin
- Assembly Plugin
- Maven Deployment
- Reporting in Maven
- Crossreferenzen mit JXR
- UML-Klassendiagramme mit JavaDoc
- Reports in Maven für Qualitätssicherung
- Code-Metriken mit Checkstyle, Findbugs, PMD und JDepend
- Dynamische Code-Analyse mit Cobertura oder JaCoCo
- Konfiguration der Plugins
- Nexus als Firmen-Repository
- CI Grundlagen
- Jenkins Grundlagen
- Installation
- Konfiguration
- Arbeiten mit Jenkins
- Jobs erstellen mit Ant, Maven
- Anbindung an SCM wie CVS, SVN, git, ...
- Build-Trigger
- Plugins für Projektmetriken wie beispielsweise Findbugs und Checkstyle
- Jenkins für große Projekte
- Parallele Builds
- Build-Reihenfolge
- Tuning
- Interessante Plugins für Jenkins
- Continuous Delivery mit Build Pipeline Plugin
- Parameter und Bedingungen
- Fork/Join
- Build Jobs für Nicht-Java-Projekte
- C#, make, ...
- Grundlagen zu Continuous Deployment und Delivery
- DevOps
- Unterschiede zwischen Continuous Deployment und Delivery
- Feature Toggle
- Branches by Abstraction
- Deployment Pipeline (Continuous Deployment)
- Welche Umgebungen brauche ich?
- Aufbau einer Deployment Pipeline
- Automatisierte Release Pipelines
- Promotion von Builds
- Hilfreiche Jenkins Plugins
- Test-Automatisierung (Continuous Testing)
- Automatisierte Tests
- Jenkins Plugins für Unit, Integration, Functional, NonFunctional, SmokeTests
- Umgebungen automatisiert aufbauen
- Infrastructure as a Code
- Provisioning von virtuellen Maschinen mit Docker, Vagrant, Puppet, Chef, Packer o.a.
- Docker Images mit Maven erstellen
- Docker Container mit Jenkins starten
- MatrixBuilds mit Jenkins z.B. für unterschiedliche Datenbanken oder Java Versionen
- Ausblick
- Continuous Monitoring (Cycle Time)
- Integration in Application Lifecycle Management (ALM) Arbeitsabläufe
Zielgruppe / Voraussetzungen
Hinweis: Dieser Kurs richtet sich an Mitarbeitende aus Unternehmen und Institutionen.
Für Privatpersonen ist dieser Kurs leider nicht geeignet.
Bitte beachten Sie: Bildungsgutscheine der Agentur für Arbeit werden für diesen Kurs NICHT anerkannt.
Abschlussqualifikation / Zertifikat
Infos anfordern
GFU Cyrus AG
Erweitern Sie Ihre IT-Skills mit einem offenen IT-Training oder ganz nach Ihren Bedürfnissen durch eine individuelle IT-Schulung. Programmiersprachen (C#, Python, Java, …), Microsoft Office 365, Anforderungsmanagement, Projektmanagement, Business Intelligence, Data Science, Künstliche Intelligenz, IT-Sicherheit , Administration & Datenbanken, Softwareentwicklung, Testmanagement...
Erfahren Sie mehr über GFU Cyrus AG und weitere Kurse des Anbieters.
Bewertungen von Teilnehmern
Bewertungsdurchschnitt: 4,5
- meine Produktivität wird auf jeden Fall erhöht
- das Seminar hat definitiv meine hohen Erwartungen erfüllt
Deutsch ist nicht mein Muttersprache, deshalb ich leider viel Information verloren habe. Aber ich habe sehr viele neue Dinge endlich mitgebracht
Erklärungen über Tablets mit Stift waren interaktiver als nur das starre klassische Erklären auf Folien in anderen Seminaren.