38 Ausführen und Überwachen der Pipeline

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.

38.1 Ausführen der Pipeline

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.

  1. Navigiere zum gewünschten Projekt in GitLab.
  2. Klicke auf den Reiter CI/CD und wähle Pipelines.
  3. Dort kannst du die Pipeline manuell starten, indem du auf Run Pipeline klickst und den gewünschten Branch auswählst.

38.2 Überwachung des Pipeline-Status

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:

38.3 Ansicht der Pipeline-Details

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:

  1. 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.

  2. 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.

38.4 Verwendung von Retry und Auto-Retry

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.

38.5 Benachrichtigungen und Alerts

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.