Nachdem die GitLab CI/CD-Pipeline konfiguriert und Unit-Tests integriert wurden, besteht der nächste Schritt darin, die Pipeline auszuführen und den Fortschritt sowie den Erfolg der einzelnen Jobs zu überwachen. In diesem Kapitel lernen wir, wie eine Pipeline in GitLab gestartet wird, welche verschiedenen Überwachungsmöglichkeiten es gibt, und wie Logs und Fehler analysiert werden können.
Die Pipeline wird in der Regel automatisch ausgeführt, sobald ein
Commit zu einem Branch oder ein Merge
Request erstellt wird. GitLab verfolgt jeden neuen Commit und
startet die Pipeline basierend auf den in der
.gitlab-ci.yml
definierten Stages und Jobs. Es gibt jedoch
auch Möglichkeiten, eine Pipeline manuell zu starten.
Automatischer Pipeline-Start bei einem Commit: -
Sobald eine Datei in einem Repository geändert und ein Commit
durchgeführt wird, erkennt GitLab diese Änderung und startet die
Pipeline automatisch, sofern eine .gitlab-ci.yml
-Datei
vorhanden ist. - Jedes Mal, wenn neue Änderungen gepusht werden, führt
GitLab die definierte Pipeline erneut aus.
Manuelles Ausführen einer Pipeline: - GitLab bietet auch die Möglichkeit, eine Pipeline manuell zu starten. Dies ist nützlich, wenn du eine Pipeline auf einem bestimmten Branch oder mit spezifischen Parametern ausführen möchtest.
Sobald eine Pipeline ausgeführt wird, zeigt GitLab den aktuellen Status der Pipeline an. Über das Pipelines-Dashboard kannst du den Fortschritt in Echtzeit verfolgen. Die verschiedenen Status einer Pipeline und der einzelnen Jobs sind durch Farben und Symbole gekennzeichnet:
only
oder
except
.GitLab bietet eine übersichtliche Darstellung jeder Pipeline mit allen Jobs und Stages. Durch einen Klick auf eine Pipeline im Dashboard kannst du eine detaillierte Übersicht aller durchgeführten Schritte erhalten:
Pipeline-Grafik: GitLab bietet eine grafische Übersicht über die verschiedenen Stages und deren Abhängigkeiten. Hier kannst du sehen, welche Jobs parallel laufen und welche in der Reihenfolge nacheinander ausgeführt werden.
Job-Logs: Wenn ein Job ausgeführt oder abgeschlossen wurde, kannst du die Logs des jeweiligen Jobs einsehen. Diese Logs sind entscheidend für die Fehleranalyse, da sie die genauen Ausgaben und potenzielle Fehler während des Builds, der Tests oder des Deployments anzeigen.
Beispiel einer Job-Log-Anzeige: - Navigiere zu CI/CD > Pipelines und wähle eine Pipeline aus. - Klicke auf einen Job, um die vollständige Ausgabe des Jobs zu sehen, einschließlich aller Schritte, die während der Ausführung durchgeführt wurden. - Fehleranalyse: Sollte ein Job fehlschlagen, gibt dir GitLab klare Hinweise auf den Punkt, an dem der Fehler aufgetreten ist. Durch das Einsehen der Logs kannst du den Fehler erkennen und beheben.
GitLab bietet die Möglichkeit, fehlgeschlagene Jobs mit einem Klick
auf Retry erneut auszuführen. Dies ist nützlich, wenn
es sich um temporäre Fehler handelt, wie z. B. Netzwerkprobleme.
Zusätzlich kannst du in der .gitlab-ci.yml
Auto-Retry-Funktionen einbauen, die Jobs automatisch mehrmals
wiederholen lassen, bevor die Pipeline als fehlgeschlagen markiert
wird.
Beispiel für Auto-Retry:
test_job:
script:
- npm run test
retry: 2
In diesem Beispiel wird der test_job
maximal zweimal
erneut ausgeführt, bevor die Pipeline als endgültig fehlgeschlagen
gilt.
GitLab ermöglicht es dir, Benachrichtigungen einzurichten, die dich bei fehlerhaften Pipelines oder bestimmten Ereignissen in der Pipeline per E-Mail oder andere Kommunikationswege informieren. Dies ist besonders nützlich, um sofort auf Probleme reagieren zu können.