Skip to main content

Steuern der Auftragsausführung mithilfe von Bedingungen

Verhindere, dass ein Auftrag ausgeführt wird, wenn deine Bedingungen nicht erfüllt sind.

Mit der Bedingungjobs.<job_id>.if kannst du dafür sorgen, dass ein Schritt nur ausgeführt wird, wenn eine Bedingung erfüllt ist. Du kannst eine Bedingung mit jedem unterstützten Kontext und Ausdruck erstellen. Weitere Informationen dazu, welche Kontexte in diesem Schlüssel unterstützt werden, findest du unter Kontextreferenz.

Beispiel: Ausführen eines Auftrags nur für ein bestimmtes Repository

In diesem Beispiel wirdif verwendet, um zu steuern, wann der Auftragproduction-deploy ausgeführt werden kann. Er wird nur ausgeführt, wenn das Repositoryocto-repo-prod heißt und sich innerhalb der Organisationocto-org befindet. Andernfalls wird der Auftrag als_übersprungen_ markiert.

YAML
name: example-workflow
on: [push]
jobs:
  production-deploy:
    if: ${{ github.repository == 'octo-org/octo-repo-prod' }}
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5
      - uses: actions/setup-node@v4
        with:
          node-version: '14'
      - run: npm install -g bats

Für übersprungene Aufträge wird die Meldung „Diese Überprüfung wurde übersprungen.“ angezeigt.

Hinweis

Der Status eines übersprungenen Auftrags wird als „Success“ angezeigt. Die Zusammenführung eines Pull Requests wird dadurch nicht verhindert, selbst wenn es sich um eine erforderliche Überprüfung handelt.