Tag 1 - Grundlagen und Workflow-Design
- Einführung in GitHub Actions
- Motivation und Nutzen von Automatisierung
- Architektur: Workflows, Jobs, Steps, Actions
- Unterschiede: GitHub-hosted vs. self-hosted Runner
- Erstellung und Strukturierung von Workflows
- Aufbau von .github/workflows/.yml
- Events & Trigger: push, pull_request, schedule
- Kontrollstrukturen: if, needs, continue-on-error
- Umgebungsvariablen und Kontexte (github, env, runner)
- Nutzung bestehender Aktionen
- GitHub Marketplace und Community-Actions
- Sicherheitsaspekte bei Drittanbieter-Actions
- Erstellung eigener GitHub Actions
- JavaScript-basierte Actions (Node.js)
- Docker-basierte Actions
- Metadata (action.yml), Versionierung und Veröffentlichung
- Umgang mit Secrets und Berechtigungen
- Verwaltung von GitHub Secrets
- Zugriffskontrolle auf Repository-, Organisations- und Environment-Ebene
- GITHUB_TOKEN und Security-Kontexte
Tag 2 - Vertiefung, CI/CD-Pipelines und Best Practices
- Fortgeschrittene Workflow-Konzepte
- Matrix-Builds, Parallelisierung, dynamische Jobs
- Bedingte Ausführungen, Timeouts und Laufzeitstrategien
- Caching und Artefaktmanagement
- Verwendung von actions/cache, upload-artifact, download-artifact
- Organisation und Lebensdauer von Artefakten
- CI/CD mit GitHub Actions
- Aufbau kompletter CI/CD-Pipelines
- Automatisierte Tests (Unit, Linting, Integration)
- Build- und Release-Prozesse, Deployment Hooks
- Branch Protection und Status Checks
- Debugging und Fehlersuche
- Logging mit ACTIONS_STEP_DEBUG
- Umgang mit fehlschlagenden Workflows
- Best Practices & Skalierung
- DRY-Prinzip, reusable workflows und Modularisierung
- Performance-Tuning und Workflow-Analyse
- Wartung und Versionierung großer Workflows
- Nutzung von GitHub Insights
- Beispiele und Hands-on
- Templates für Node.js, Python, Java
- Gemeinsames Erarbeiten eines End-to-End-Workflows
- Praxisübungen nach Bedarf und Projekterfahrung der Teilnehmer
LernzieleNach dem Seminar sind Sie in der Lage, automatisierte Workflows mit GitHub Actions effizient zu planen, zu entwickeln und sicher zu betreiben. Sie verstehen die Architektur und Funktionsweise von Actions, nutzen bestehende sowie eigene Aktionen zielgerichtet und setzen vollständige CI/CD-Pipelines um. Darüber hinaus kennen Sie erprobte Strategien zur Modularisierung, Wartung und Skalierung Ihrer Automatisierungslösungen.
ZielgruppenDieses Seminar richtet sich an Softwareentwicklerinnen und -entwickler, DevOps-Engineers sowie technische Projektverantwortliche, die GitHub Actions zur Automatisierung von Entwicklungsprozessen einsetzen möchten. Es eignet sich besonders für Teams, die bereits Git und GitHub produktiv nutzen und nun ihre Abläufe mit CI/CD-Pipelines professionalisieren möchten.