Mit der Bedingung jobs.<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 wird if verwendet, um zu steuern, wann der Auftrag production-deploy ausgeführt werden kann. Er wird nur ausgeführt, wenn das Repository octo-repo-prod heißt und sich innerhalb der Organisation octo-org befindet. Andernfalls wird der Auftrag als übersprungen markiert.
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
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.