23 Tutorial: Erstellen und Ausführen einer einfachen GitLab CI/CD-Pipeline

In diesem Abschnitt wird beschrieben, wie du deine erste CI/CD-Pipeline in GitLab einrichtest und ausführst. CI/CD ermöglicht eine automatisierte Entwicklung durch kontinuierliches Bauen, Testen und Bereitstellen von Code.

23.0.1 Voraussetzungen

23.0.2 Schritte zur Erstellung und Ausführung einer Pipeline

23.0.2.1 Runner bereitstellen

Runner führen die in deiner CI/CD-Pipeline definierten Jobs aus. Wenn du GitLab.com verwendest, sind bereits vorkonfigurierte Runner verfügbar. In einem selbst gehosteten Setup müssen Runner installiert und registriert werden, um Jobs auszuführen.

23.0.2.2 Erstellen der .gitlab-ci.yml Datei

Die Konfigurationsdatei .gitlab-ci.yml enthält die Anweisungen, die der Runner für deine Pipeline ausführt. Definiere Jobs, die in verschiedenen Phasen ausgeführt werden, wie zum Beispiel build, test und deploy.

Beispiel für eine einfache .gitlab-ci.yml Datei:

build-job:
  stage: build
  script:
    - echo "Hello, $GITLAB_USER_LOGIN!"

test-job1:
  stage: test
  script:
    - echo "This job tests something"

test-job2:
  stage: test
  script:
    - echo "This job tests something, but takes more time."
    - sleep 20

deploy-prod:
  stage: deploy
  script:
    - echo "Deploying from $CI_COMMIT_BRANCH."
  environment: production

In diesem Beispiel werden vier Jobs definiert: build-job, test-job1, test-job2 und deploy-prod. Bei jedem Commit im Repository wird die Pipeline gestartet und die Jobs werden nach den angegebenen Bedingungen ausgeführt.

23.0.2.3 Pipeline und Job-Status anzeigen

Der Status der Pipeline und der einzelnen Jobs kann unter Build > Pipelines angezeigt werden. Du siehst eine visuelle Darstellung der Pipeline sowie Details zu jedem Job, wie etwa Log-Ausgaben und den Ausführungsstatus.

23.0.3 Tipps zur Arbeit mit der .gitlab-ci.yml Datei

Diese einfache Pipeline bildet den Einstieg in die Automatisierung mit GitLab CI/CD. Durch Hinzufügen weiterer Phasen und Jobs kannst du den Prozess an die Anforderungen deines Projekts anpassen und skalieren.