Note
Auf GitHub gehostete Runner werden aktuell nicht auf GitHub Enterprise Server unterstützt. Weitere Informationen zur geplanten zukünftigen Unterstützung findest Du in der GitHub public roadmap.
Übersicht
Mit Workflowvorlagen können alle Personen in deiner Organisation, die über die entsprechenden Berechtigungen verfügen, Workflows schneller und leichter erstellen. Bei der Erstellung eines neuen Workflows kann eine Workflowvorlage ausgewählt werden, die Ihnen das Schreiben des Workflows ganz oder teilweise abnimmt. Workflowvorlagen können als Ausgangspunkt verwendet werden, um eigene benutzerdefinierte Workflow zu erstellen, oder unverändert übernommen werden. So sparst du nicht nur Zeit, sondern sorgst auch für Konsistenz und den Einsatz bewährter Methoden in deiner Organisation.
GitHub bietet einsatzbereite Workflowvorlagen für die folgenden Kategorien auf hoher Ebene:
-
Bereitstellung (CD) . Weitere Informationen findest du unter Info zu Continuous Deployment mit GitHub Actions.
-
Continuous Integration (CI) Weitere Informationen findest du unter Info zu Continuous Integration mit GitHub Actions.
-
Automatisierung. Automatisierungs-Workflowvorlagen bieten Lösungen für die Automatisierung von Workflows, wie z. B. die Triage von Pull Requests und das Anwenden einer Bezeichnung basierend auf den Pfaden, die im Pull Request geändert werden, oder das Begrüßen von Benutzern, die zum ersten Mal Mitwirkende des Repositorys sind.
Note
Da für Workflowvorlagen ein öffentliches .github
-Repository erforderlich ist, sind sie für Enterprise Managed Users nicht verfügbar.
Erstellen einer Workflowvorlage
Workflowvorlagen können von Benutzer*innen mit Schreibzugriff auf das öffentliche .github
-Repository der Organisation erstellt werden. Diese können dann von Organisationsmitgliedern verwendet werden, die über die Berechtigung zum Erstellen von Workflows verfügen.
Note
Um die Duplizierung von Workflowvorlagen zu vermeiden, können wiederverwendbare Workflows innerhalb eines Workflows aufgerufen werden. Dies kann die Verwaltung von Workflows vereinfachen. Weitere Informationen findest du unter Wiederverwenden von Workflows.
In diesem Verfahren wird das Erstellen einer Workflowvorlage und einer Metadatendatei veranschaulicht. Die Metadatendatei beschreibt, wie die Workflowvorlage Benutzer*innen beim Erstellen eines neuen Workflows zur Verfügung gestellt wird.
-
Wenn diese noch nicht vorhanden ist, müssen Sie ein neues öffentliches Repository mit dem Namen
.github
in Ihrer Organisation erstellen. -
Erstelle ein Verzeichnis namens
workflow-templates
. -
Erstelle die neue Workflowdatei im Verzeichnis
workflow-templates
.Wenn du auf den Standardbranch eines Repositorys verweisen musst, kannst du den Platzhalter
$default-branch
verwenden. Beim Erstellen eines Workflows wird der Platzhalter automatisch durch den Namen des Standardbranches des Repositorys ersetzt.Note
Die folgenden Werte im
runs-on
-Schlüssel werden auch als Platzhalter behandelt:- „ubuntu-latest“ wird durch „[ self-hosted ]“ ersetzt.
- „windows-latest“ wird durch „[ self-hosted, windows ]“ ersetzt.
- „macos-latest“ wird durch „[ self-hosted, macOS ]“ ersetzt.
Die Datei
octo-organization-ci.yml
veranschaulicht beispielsweise einen grundlegenden Workflow.YAML name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run a one-line script run: echo Hello from Octo Organization
name: Octo Organization CI on: push: branches: [ $default-branch ] pull_request: branches: [ $default-branch ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Run a one-line script run: echo Hello from Octo Organization
-
Erstelle im Verzeichnis
workflow-templates
eine Metadatendatei. Die Metadatendatei muss denselben Namen wie die Workflowdatei tragen, aber statt der.yml
-Erweiterung muss.properties.json
angefügt sein. Beispielsweise enthält die Dateiocto-organization-ci.properties.json
die Metadatei für den Workflowocto-organization-ci.yml
:JSON { "name": "Octo Organization Workflow", "description": "Octo Organization CI workflow template.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
{ "name": "Octo Organization Workflow", "description": "Octo Organization CI workflow template.", "iconName": "example-icon", "categories": [ "Go" ], "filePatterns": [ "package.json$", "^Dockerfile", ".*\\.md$" ] }
-
name
- Muss angegeben werden. Der Name des Workflows. Dieser wird in der Liste der verfügbaren Workflows angezeigt. -
description
- Muss angegeben werden. Die Beschreibung des Workflows. Diese wird in der Liste der verfügbaren Workflows angezeigt. -
iconName
- Kann optional angegeben werden. Legt ein Symbol für den Workflow fest, das in der Liste der Workflows angezeigt wird.iconName
kann einem der folgenden Typen entsprechen:- Eine SVG-Datei, die im Verzeichnis
workflow-templates
gespeichert ist. Um auf eine Datei zu verweisen, muss der Wert dem Dateinamen ohne Dateierweiterung entsprechen. Beispielsweise wird auf eine SVG-Datei mit dem Namenexample-icon.svg
alsexample-icon
verwiesen. - Ein Symbol aus der Octicon-Gruppe von GitHub. Um auf ein Octicon zu verweisen, muss der Wert
octicon <icon name>
lauten. Beispielsweiseocticon smiley
.
- Eine SVG-Datei, die im Verzeichnis
-
categories
- Kann optional angegeben werden. Definiert die Kategorien, unter denen der Workflow angezeigt wird. Du kannst Kategorienamen aus den folgenden Listen verwenden:- Allgemeine Kategorienamen aus dem Repository starter-workflows.
- Linguist-Sprachen aus der Liste im Repository linguist.
- Unterstützte Technologiestapel aus der Liste im Repository starter-workflows.
-
filePatterns
- Kann optional angegeben werden. Dies ermöglicht die Verwendung des Workflows, wenn sich im Repository des Benutzers bzw. der Benutzerin eine Datei im Stammverzeichnis befindet, die einem definierten regulären Ausdruck entspricht.
-
Fügen Sie die Dateien demselben Verzeichnis workflow-templates
hinzu, um eine weitere Workflowvorlage hinzuzufügen.
Nächste Schritte
Weitere Informationen zu GitHub Actions findest du unter Verwenden von Workflowvorlagen.