Kombi.
Jenkins Schulung mit Bitbucket
Mit der Jenkins und Bitbucket Schulung bauen wir eine Continuous Integration, Delivery und Deployment Pipeline als Herz deiner Infrastruktur auf.
Beschreibung
Continuous Integration, Delivery und Deployment (CI/CD) mit Jenkins und Bitbucket sind entscheidende Elemente einer zeitgemäßen DevOps-Infrastruktur und spielen eine zentrale Rolle in agilen Arbeitsmethoden. Diese umfassende Schulung kombiniert verschiedene Aspekte, um ein ganzheitliches Verständnis des Themas zu vermitteln.
Durch regelmäßige Code-Integration wird die Qualität im Entwicklungsprozess sichergestellt und Probleme schnell erkannt (Fail Fast). Durch die gezielte Messung vergleichbarer Qualitätsmetriken können nicht nur Quality-Gates etabliert werden, sondern ein didaktisches System für das Entwicklungsteam geschaffen werden. Die Basis für „Learn Fast“. Somit ist die Anwendung von Tools wie Jenkins und Bitbucket begleitet von einer erweiterten Toollandschaft, wie z.B. Git, SonarQube, Nexus/Artifactory, oder Docker, unerlässlich, um den Entwicklungsprozess zu unterstützen und automatisierte Freigabe- und Auslieferungsprozesse zu gewährleisten.
Diese Werkzeuge sind der Schlüssel für erfolgreiches Continuous Integration, Delivery und Deployment (CI/CD). Daher werden wir in dieser Schulung auch über den Tellerrand hinausschauen und die Integrationsmöglichkeiten dieser Werkzeuge behandeln.
In-House – du interessierst dich für eine In-House Schulung exklusiv für dein Team oder Unternehmen? Frage die Schulung an oder lass dich unverbindlich beraten.
Schulungsziel
Das primäre Ziel einer CI/CDD-Infrastruktur ist es, die Entwicklung eines Softwareprodukts durch schnellere und verkürzte Release-Zyklen voranzutreiben, ohne dabei die Qualität zu vernachlässigen. Diese Schulung ist darauf ausgerichtet, genau dieses Ziel zu erreichen.
Wir werden gemeinsam praktische Übungen durchführen, um schrittweise eine Pipeline für Codeänderungen zu entwickeln, die automatisch unsere Qualitätsanforderungen sicherstellt. Diese Pipeline wird ebenfalls in der Lage sein, Releases automatisch freizugeben und zu veröffentlichen.
Nach Abschluss der Schulung wirst du in der Lage sein, eine zuverlässige CI/CDD-Umgebung für ein Projekt oder Produkt in deinem Unternehmen einzurichten und zu verwalten. Unser Fokus liegt auf dem grundlegenden Aufbau und der Integration verschiedener Systeme.
Zielgruppe
Diese Schulung kommt für jeden infrage, der ein flexible CI/CDD-Toolchain nutzen, einführen oder modernisieren möchten: Entwickler, Release/Build Manager oder Projektverantwortliche.
Vorkenntnisse
Programmiersprachen oder der IT-Administration ist nicht notwendig, minimale Java- und sowie gute Git-Kenntnisse sind aber von Vorteil.
- Falls du keine Git-Erfahrung hast, empfehlen wir eine Git-Schulung im Vorfeld zu besuchen: Git in der Praxis
- Falls du eine allgemeine Schulung aus hoher Flughöhe suchst, ist folgende Schulung vielleicht interessant: DevOps und DevSecOps – Tools und Methoden
Inhalt
Schulungskombination
Diese Kombi-Schulung enthält folgende Schulungen und erweitert diese mit weiterem Inhalt:
Bitbucket Schulung
Überblick Bitbucket Datacenter vs. Cloud – Vor- und Nachteile
Git Crashcourse
- Die wichtigsten Git-Befehle
- Die wichtigsten Git-Strategien (z.B. Branch Workflow)
- Empfohlene Git-Workflows und deren Vor- und Nachteile
- Zentraler Workflow, Trunk-Workflow, Fork-Workflow
Bitbucket – Genereller Aufbau und Konfigurationsmöglichkeiten
- Einführung in Projekte und Repositories
- Benutzerverwaltung und Zugriffsmöglichkeiten HTTPS (Basic, Token), SSH
- Rechtemanagement – nicht nur Lese- und Schreibrechte
- Verteiltes Teamwork mit Bitbucket (Einarbeitung, Codequalität, Kommunikation)
- Formeller und informeller Ansatz der Prozesssicherheit
- Erweiterte Projekt-/Repository Konfiguration
- Push Checks – Prozessintegrität
Pull-Requests
- Branchmanagement – Review-Management
- Code-Review-Prozess: Kommentare, Diskussionen und Änderungsanforderungen
- Branch Driven Development und deren Workflowmöglichkeiten (z.B. Maintainer-Konzept)
- Unterstützung von Branchingmodellen und Merge-Strategien
- Merge-Checks – Prozess- und Qualitätssicherung
- Code Insights – Code Quality Reports als Pull-Request-Unterstützung (z.B. SonarQube)
- Möglichkeiten bzgl. Mirroring und Git Large File Storage
- Entwicklungsprozess basierend auf Forks
- Integrationsmöglichkeiten in andere Systeme
Bitbucket Erweiterungen aus dem Atlassian Marketplace
Praktische Bitbucket Übungen
- Besprochene Aspekte werden in Bitbucket konfiguriert
- Wir ändern den Code der Demo-Anwendung und demonstrieren alle besprochenen Aspekte am Lebenszyklus der Änderung.
Jenkins Schulung
Automatisiert Builds, Tests und den ganzen Releaseprozess
- Konfigurationsmöglichkeiten von Pipeline, Multi-Pipeline, Freestyle
- Welche Build-Strategien werden unterstützt?
- Verteiltes Bauen und Testen
- Automatisiertes Bauen und Testen basierend auf Branch Detection und Code Detection
- Docker als standardisierte Build-Umgebung einbinden + Docker Agents
- Toolmanagement
- Credentialstore
- Build-Nodes-Management
- Plug-in-Manager (z.B. OWASP, JUnit, JavaDoc)
Konfiguration als Code
- Erstellen von Pipelines basierend auf Groovy oder deklarativen Syntax
- Unterschied zwischen Pipeline und Multibranch-Pipline
- Declarative vs. Scripted Pipeline
- Build von Commits, Branches, Pull-/Merge-Requests und -Tags
- Pitfalls und Best Practices
Übungen und Demonstration
- Praktische Übung: Jenkins wird als CI-System für eine Demo-Umgebung konfiguriert.
- Demonstration: Wir werden eine Codeänderung in unserer Demo-Anwendung durchführen und deren automatisierte Integration bewerten.
- Praktische Übung: Basierend auf der Demo-Umgebung wird in Jenkins eine Pipeline für das kontinuierliches Deployment/Delivery erstellt.
- Demonstration: Wir werden mehrere Codeänderung in unserer Demo-Anwendung machen und den resultierenden Codestand als Release automatisiert deployen und in unserer Demo-Umgebung ausliefern.
Wir schauen über den Tellerrand
Darüberhinaus sehen weitere System bereit, die dem CI/CD System zusätzliche Informationen zur Verfügung stellt, um Änderungen in einem größeren Kontext zu bewerten und zu verstehen. Folgende Systeme stehen vorkonfiguriert zur Verfügung und werden in die CI/CD Pipeline integriert:
- Jira – Zusammen werden wir eine minimalistische Release, basierend auf Scrum, planen. Ziel ist die Umsetzung eines Issues mit den Werkzeugen Bitbucket und Git.
- SonarQube – Jeder Code, den wir erzeugen, wird einer Code-Analyse unterzogen, um z. B. Code-Smells, Bugs oder Sicherheitslücken zu identifizieren, wodurch Quality Gates eines Pull Request die Integration des Codes verhindern können.
- Nexus – Jede Codeänderung und natürlich auch ein Release wird durch eine Pipeline in dem Artefaktmanagementsystem Nexus abgelegt.
Wichtig ist hierbei, dass der Fokus auf Bitbucket und Jenkins liegt und alle anderen Systeme nur zu Demonstrationszwecken zur Verfügung stehen. Die Schulung behandelt keine administrativen Tätigkeiten in diesen Systemen. Falls dies trotzdem gewünscht ist, kannst du uns gerne kontaktieren.
Jenkins Schulung – Erfolgreich Continuous Integration meistern
Bewertung der Schulung
Bereit für DevOps? Mit unseren Zusatzangeboten machen wir mehr aus deiner Schulung.
Individualisierung - Schulungen können mit speziellen Erweiterungen individualisiert werden. Dabei lassen sich Inhalte theoretisch und praktisch anpassen.