Übersicht
Mit GitHub Actions kannst du deine Workflows so anpassen, dass sie die individuellen Anforderungen deiner Anwendung und deines Teams erfüllen. In diesem Leitfaden werden einige der wichtigsten Anpassungstechniken erklärt, z. B. das Verwenden von Variablen, das Ausführen von Skripts und das Freigeben von Daten und Artefakten zwischen Aufträgen.
Verwenden von Variablen in deinen Workflows
GitHub Actions enthält Standardumgebungsvariablen für jede Workflowausführung. Wenn du benutzerdefinierte Umgebungsvariablen verwenden musst, kannst du diese in deiner YAML-Workflowdatei festlegen. In diesem Beispiel wird veranschaulicht, wie du die benutzerdefinierten Variablen POSTGRES_HOST
und POSTGRES_PORT
erstellen kannst. Diese Variablen sind dann für das node client.js
-Skript verfügbar.
jobs:
example-job:
steps:
- name: Connect to PostgreSQL
run: node client.js
env:
POSTGRES_HOST: postgres
POSTGRES_PORT: 5432
Weitere Informationen findest du unter Variablen.
Hinzufügen von Skripts zu deinem Workflow
Mit Aktionen kannst du Skript- und Shellbefehle ausführen, die dann auf dem zugewiesenen Runner ausgeführt werden. In diesem Beispiel wird veranschaulicht, wie eine Aktion das run
-Schlüsselwort verwenden kann, um npm install -g bats
auf dem Runner auszuführen.
jobs:
example-job:
steps:
- run: npm install -g bats
Wenn du beispielsweise ein Skript als Aktion ausführst, kannst du das Skript in deinem Repository speichern und den Pfad und Shelltyp angeben.
jobs:
example-job:
steps:
- name: Run build script
run: ./.github/scripts/build.sh
shell: bash
Weitere Informationen findest du unter Workflowsyntax für GitHub Actions.
Freigeben von Daten zwischen Aufträgen
Wenn dein Auftrag Dateien generiert, die du für einen anderen Auftrag im selben Workflow freigeben möchtest, oder wenn du die Dateien zur späteren Verwendung speichern möchtest, kannst du sie in GitHub als Artefakte speichern. Artefakte sind die Dateien, die erstellt werden, wenn du deinen Code erstellst und testest. Artefakte können beispielsweise Binär- oder Paketdateien, Testergebnisse, Screenshots oder Protokolldateien sein. Artefakte sind der Workflowausführung zugeordnet, in der sie erstellt wurden, und sie können in einem anderen Auftrag verwendet werden. Alle Aktionen und Workflows, die innerhalb einer Ausführung aufgerufen werden, verfügen über Schreibzugriff für die Artefakte dieser Ausführung.
Du kannst beispielsweise eine Datei erstellen und sie dann als Artefakt hochladen.
jobs:
example-job:
name: Save output
steps:
- shell: bash
run: |
expr 1 + 1 > output.log
- name: Upload output file
uses: actions/upload-artifact@v3
with:
name: output-log-file
path: output.log
Du kannst die actions/download-artifact
-Aktion verwenden, wenn du ein Artefakt aus einer separaten Workflowausführung herunterladen möchtest. Beispielsweise kannst du das Artefakt mit dem Namen output-log-file
herunterladen.
jobs:
example-job:
steps:
- name: Download a single artifact
uses: actions/download-artifact@v3
with:
name: output-log-file
Wenn du ein Artefakt aus derselben Workflowausführung herunterladen möchtest, sollte der Downloadauftrag den needs: upload-job-name
angeben, damit er erst gestartet wird, wenn der Uploadauftrag abgeschlossen ist.
Weitere Informationen zu Artefakten findest du unter Speichern von Workflowdaten als Artefakte.
Nächste Schritte
Weitere Informationen zu GitHub Actions findest du unter Informationen zu Workflows.