GitHub Actions ist die CI/CD-Plattform von GitHub. Workflows liegen als YAML-Dateien unter .github/workflows/ und werden bei Events (push, pull_request, schedule) automatisch ausgeführt.

Aufbau eines Workflows

name: CI
on: [push, pull_request]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: make test
  • name – Anzeigename; on – auslösende Events (auch workflow_dispatch für manuellen Start).
  • jobs – enthält die Jobs; jeder Job läuft isoliert auf einem Runner (runs-on: ubuntu-latest, windows-latest, macos-latest oder self-hosted).
  • steps – Schritte im Job: uses ruft fertige Actions auf (z. B. actions/checkout@v4), run führt Shell-Befehle aus.
  • env – Umgebungsvariablen; with – Parameter der verwendeten Action.
  • secrets.<NAME> – greift auf gespeicherte Geheimnisse zu; GITHUB_TOKEN ist automatisch verfügbar.

Fortgeschrittene Bausteine

strategy.matrix fährt dieselben Schritte mit mehreren Kombinationen (z. B. Node-Versionen), if steuert Bedingungen über Ausdrücke (${{ }}), timeout-minutes begrenzt die Laufzeit. Mit actions/upload-artifact und actions/download-artifact werden Artefakte zwischen Jobs geteilt, permissions schränkt Token-Rechte ein, concurrency verhindert parallele Läufe auf derselben Referenz. Reusable Workflows werden per workflow_call eingebunden.

Verwandte Themen: YAML/TOML/JSON-Befehle (Workflow-Syntax), Jenkinsfile-Befehle (klassische CI/CD-Alternative), Dockerfile-Befehle (Container-Builds in Actions), Bash-Befehle (run-Schritte).