Beschreibung
Continuous Integration/Deployment/Delivery mit Bitbucket und Bamboo
Zielgruppe: Nur für Unternehmen und Institutionen.Mit den Tools Bamboo und Bitbucket der Firma Atlassian erhalten Teams eine moderne und flexible CI/CD Toolchain, welche Continuous-Integration-, Continuous-Deployment- und Continuous-Delivery-Prozesse ermöglicht. Via Bitbucket können verteilte und lokale Teams den Source Code zusammen verwalten, bearbeiten und über das integrierte Review Management bewerten.
Mit Bamboo wird jede Codeänderung automatisch und kontinuierlich integriert, wodurch
Entwickler zeitnahes Feedback über ihre Codeänderung erhalten. Darüber hinaus bietet Bamboo die Möglichkeit, via Pipelines Codestände automatisiert zu deployen oder sogar Produktivsysteme automatisch zu aktualisieren.
In diesem Seminar installieren/konfigurieren wir diese Systeme in einer Datacenter-Umgebung und bilden deren Funktionalität in einer praxisnahen Umgebung ab. Die praktische Basis des Seminars wird durch eine leichtgewichtige Demo-Anwendung, ein Produktivsystem (Docker), eine Buildumgebung (Docker) und einen leichtgewichtigen Entwicklungsprozess begleitet. An dieser Umgebung werden wir zusammen den kompletten Lebenszyklus einer Codeänderung sowie eines Release durchspielen. Jedoch wird hier nicht nur der Lebenszyklus von Code-Änderung bis Auslieferung betrachtet, sondern auch die Prozesssicherheit beispielhaft implementiert und demonstriert. Ziel ist, dass der beschriebene Entwicklungsprozess nicht nur in der Theorie lebt, sondern auch in der Praxis systemgestützt sichergestellt wird.
Kommende Starttermine
Inhalte / Module
- Bitbucket und die Möglichkeiten der verteilten Zusammenarbeit
- Überblick Datacenter vs. Cloud - Vor- und Nachteile
- Genereller Aufbau und die Konfigurationsmöglichkeiten, insbesondere:
- Benutzerverwaltung und Zugriffsmöglichkeiten HTTPS (Basic, Token), SSH
- Pull-Requests, Branchmanagement - Review-Management
- Branch Driven Development und dessen Workflowmöglichkeiten (z.B. Maintainer Konzept)
- Unterstützung von Branchingmodellen und Merge-Strategien
- Rechtemanagement - Nicht nur Lese und Schreibrechte
- Push und Merge-Checks - Prozessintegrität
- Code Insights - Code Quality Reports als Pull-Request Unterstützung
- Möglichkeiten bzgl. Mirroring und Git Large File Storage
- Verteiltes Teamwork mit Bitbucket (Einarbeitung, Code-Qualität, Kommunikation)
- Ein formeller und informeller Ansatz der Prozesssicherheit
- Entwicklungsprozess basierend auf Forks
- Integrationsmöglichkeiten in andere Systeme
- Kleine Helferlein aus dem Atlassian Marketplace
- Praktische Übung: Installation von Bitbucket als Datacenter in einer Dockerumgebung
- Praktische Übung: Besprochene Aspekte werden in Bitbucket zusammen konfiguriert
- Demonstration: Wir ändern den Code der Demo-Anwendung und demonstrieren alle besprochenen Aspekte am Lebenszyklus der Änderung
- Bamboo automatisiert Builds, Tests und den ganzen Releaseprozess
- Genereller Aufbau und die Konfigurationsmöglichkeiten, insbesondere:
- Konfigurationsmöglichkeiten von Projekt, Plan, Job, Task, Stage
- Welche Build-Strategien unterstützt Bamboo?
- Das verteilte Bauen und Testen mit Agenten (Remote-Agents)
- Agenten für spezielle Aufgaben (Capabilities) konfigurieren und Build-Jobs entsprechend
- automatisch dispatchen
- Automatisiertes Bauen und Testen basierend auf Branch Detection und Code Detection
- Automatisches Mergen (Branch Updater und Gatekeeper)
- Docker als standardisierte Build-Umgebung einbinden + Docker Agents
- Integrationsmöglichkeiten in andere Systeme
- Kleine Helferlein aus dem Atlassian Marketplace
- Praktische Übung: Installation von Bamboo als Datacenter in einer Dockerumgebung
- Praktische Übung: Bamboo wird als CI-System für unsere Demo-Umgebung konfiguriert
- Demonstration: Wir werden eine Codeänderung in unserer Demo-Anwendung durchführen und deren automatisierte Integration bewerten.
- Bamboo Pipeline - Continuous-Deployment- und Continuous-Delivery-Prozesse
- Konfigurationsmöglichkeiten eines Deploymentprojekts
- Erstellen von Pipelines basierend auf Java- oder YAML-Specs
- Ausführen der Pipeline in einem Releaseprozess
- Praktische Übung: Basierend auf der Demo-Umgebung wird in Bamboo eine Pipeline für das kontinuierliches Deployment/Delivery erstellt
- Demonstration: Wir werden mehrere Codeänderungen in unserer Demo-Anwendung machen und den resultierenden Codestand als Release automatisiert deployen und in unserer Demo-Umgebung ausliefern.
- Genereller Aufbau und die Konfigurationsmöglichkeiten, insbesondere:
- Ausblick
- Es werden Möglichkeiten bzgl. Monitoring der Demo-Anwendung mit Atlassian Statuspage gezeigt. Klare transparente Kommunikation der Uptime Ihrer Anwendungen
- Hinweise auf Automatisierung bzgl. der dazu verwendbaren Rest-APIs
- Weitere Integrationsmöglichkeiten in der Atlassian Welt
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.