PROJECT.LOADED
MODUL 122 · SCRIPTING
Alle Projekte
// Modul 122 · Scripting & Automatisierung
CI/CD Pipeline mit Bash & Python
Vollständige CI/CD Pipeline in Bash — automatisierter Build, 13 Unit Tests mit pytest und Deployment mit Backup-Funktionalität. Erweiterte Version mit Git-Integration, Benachrichtigungssystem und Pipeline-Metriken. November 2025.
// Pipeline-Phasen
Phase 0: Git
Git-Installation prüfen, Branch & Commit-Info, Uncommitted Changes warnen
Phase 1: Build
Python-Installation prüfen, Syntax-Check mit py_compile, Build-Metadaten erstellen
Phase 2: Test
Unit Tests mit pytest, Integrationstests, testweise Ausführung des Programms
Phase 3: Deploy
Altes Deployment sichern (Backup), Artefakte kopieren, Rechte setzen & Doku
// Behandelte Themen & Features
CI/CD-Grundlagen
Continuous Integration & Deployment Prinzipien, Pipeline-Stages, Tool-Vergleich
Bash-Automatisierung
Modulare Funktionen, farbcodierte Terminal-Ausgabe, robuste Fehlerbehandlung
Python Unit Testing
13 Tests in 2 Testklassen (TestMathOperations + TestIntegration), vollständige Coverage
Git-Versionskontrolle
Automatische Prüfung auf uncommitted Changes, Branch-Info in Build-Metadaten
Backup & Rollback
Automatisches Backup vor jedem Deployment, eindeutige Build-Nummern
Benachrichtigungssystem
Simulierte E-Mail-Reports mit Pipeline-Status, Metriken und Fehlerdetails
// pipeline.sh — Basis-Pipeline
#!/bin/bash # Phase 1: BUILD check_python_installation validate_project_files syntax_check_with_py_compile copy_to_build_directory create_build_metadata # Phase 2: TEST find_test_files run_unit_tests # 13 Tests, 2 Klassen run_main_program # Testweise Ausführung # Phase 3: DEPLOY cleanup_old_deployment copy_build_artifacts create_deployment_docs set_execution_permissions
// Terminal-Ausgabe
Tests durchgeführt: 13 Erfolgreich: 13 Fehlgeschlagen: 0 ✓ Alle Tests erfolgreich bestanden ✓ DEPLOY Phase abgeschlossen ℹ Gesamtdauer: 3 Sekunden
// Projektstruktur
ci_cd_demo/ ├── pipeline.sh ├── pipeline_extended.sh ├── src/ │ └── main.py ├── tests/ │ └── test.py ├── build/ ├── deploy/ ├── logs/ └── backups/
// Gelernte Konzepte
- CI/CD Pipeline Design
- Automatisierte Tests
- Build-Artefakt-Management
- Deployment-Strategien
- Rollback via Backups
- Modulare Bash-Programmierung
- DRY-Prinzip
Gruppenprojekt — Recherche, Implementierung und Dokumentation als Zweierteam.
Weitere Projekte entdecken
Zurück zur Projektübersicht oder direkt Kontakt aufnehmen.