Hinweis: Die erforderlichen Workflows befinden sich derzeit in der Betaphase, und Änderungen sind vorbehalten.
Übersicht
Du kannst einen Workflow konfigurieren, der in Repositories in einer Organisation für alle Pull Requests laufen muss, die gegen eine beliebige Zielverzweigung geöffnet werden. Erforderliche Workflows ermöglichen es dir, unternehmensweite CI/CD-Richtlinien zu implementieren, die für aktuelle und zukünftige Repositorys gelten. Ein erforderlicher Workflow wird durch Pull Request-Ereignisse ausgelöst und als erforderliche Statusüberprüfung angezeigt, die die Möglichkeit blockiert, den Pull Request zusammenzuführen, bis der erforderliche Workflow erfolgreich ist.
Erforderliche Workflows sind nicht mit wiederverwendbaren Workflows identisch. Wiederverwendbare Workflows können von einem anderen Workflow aufgerufen werden. Erforderliche Workflows werden von einemeiner Organisationsbesitzerin für Repositorys erzwungen.
Voraussetzungen
Beachte vor dem Konfigurieren eines erforderlichen Workflows die folgenden Voraussetzungen:
- GitHub Actions muss für ein Repository in den Einstellungen der Organisation aktiviert sein, damit die erforderlichen Workflows ausgeführt werden können. Nach der Aktivierung auf Organisationsebene werden die erforderlichen Workflows auch dann ausgeführt, wenn GitHub Actions in den Einstellungen des Repositorys deaktiviert ist. Weitere Informationen zum Verwalten von GitHub Actions in den Repositorys deiner Organisation findest du unterGitHub Actions für deine Organisation Deaktivieren oder Einschränken.
- Erforderliche Workflows sind für Organisationen und nur in Repositorys verfügbar, in denen der Plan der Organisation erforderliche Statusüberprüfungen unterstützt. Wenn erforderliche Statusüberprüfungen nicht unterstützt werden, wird der Workflow weiterhin ausgeführt. Es handelt sich dabei jedoch nicht um eine erforderliche Überprüfung, und das Mergen wird nicht verhindert. Weitere Informationen zur Unterstützung für erforderliche Statusüberprüfungen findest du unter Informationen zu geschützten Branches.
- Der Standardbranch des Repositorys muss mit der Standardbrancheinstellung der Organisation übereinstimmen, damit erforderliche Workflows als erforderliche Statusüberprüfungen ausgeführt werden können. Wenn die Standardbranchnamen nicht übereinstimmen, wird der Workflow weiterhin ausgeführt, aber es handelt sich nicht um eine erforderliche Überprüfung. Weitere Informationen zum Verwalten von Standardbranchnamen findest du unter Verwalten des Standardbranchnamens für Repositorys in deiner Organisation und Ändern des Standardbranchs.
- Damit erforderliche Workflows ausgeführt werden können, muss sich das Quellrepository des Pull Requests in derselben Organisation wie das Zielrepository befinden. GitHub Enterprise Cloud bezieht den erforderlichen Workflow aus dem HEAD-Commit des Standardbranchs aus dem Repository, das den Workflow enthält.
- Geheimnisse, die in einem erforderlichen Workflow verwendet werden, sollten entweder auf Organisationsebene oder in den Zielrepositorys erstellt werden.
- Geheimnisse im Quellrepository werden nicht gefetcht, wenn ein Workflow im Zielrepository ausgeführt wird.
Einschränkungen und Verhaltensweisen für das Quellrepository
Beachte die folgenden Einschränkungen und Verhaltensweisen für das Quellrepository und den Workflow:
- Erforderliche Workflows können in jedem Repositoryordner gespeichert werden und sind nicht wie normale Workflows auf den Ordner
.github/workflows
beschränkt. Wenn ein erforderlicher Workflow einen wiederverwendbaren Workflow aufruft, muss der wiederverwendbare Workflow im Ordner.github/workflows
gespeichert sein. Beim Aufrufen eines wiederverwendbaren Workflows muss ein erforderlicher Workflow den vollständigen Pfad und Verweis für den wiederverwendbaren Workflow verwenden. Beispiel:{owner}/{repo}/.github/workflows/{filename}@{ref}
. - Wenn der erforderliche Workflow sich in einem privaten oder internen Repository befindet, musst du sicherstellen, dass Workflows innerhalb des Repositorys für andere Repositorys in der Organisation zugänglich sind. Weitere Informationen findest du unter Zulassen des Zugriffs auf Komponenten in einem privaten Repository und Zulassen des Zugriffs auf Komponenten in einem internen Repository.
- Workflows, die in einem öffentlichen Repository gespeichert sind, können als erforderliche Workflows für jedes Repository in der Organisation konfiguriert werden. Workflows, die in einem privaten Repository gespeichert sind, können nur für andere private Repositorys in der Organisation als erforderliche Workflows konfiguriert werden. Workflows, die in einem internen Repository gespeichert sind, können für interne und private Repositorys in der Organisation als erforderliche Workflows konfiguriert werden.
- CodeQL wird in erforderlichen Workflows nicht unterstützt, da für CodeQL eine Konfiguration auf Repositoryebene erfolgen muss. Weitere Informationen zum Konfigurieren der Codeüberprüfung findest du unter Konfigurieren der Codeüberprüfung für ein Repository.
Einschränkungen und Verhaltensweisen für das Zielrepository
Beachte die folgenden Einschränkungen und Verhaltensweisen für die Zielrepositorys:
- Wenn du einen erforderlichen Workflow für die Ausführung in allen oder ausgewählten Repositorys konfigurierst, wirkt sich die Sichtbarkeit des Repositorys, das den erforderlichen Workflow enthält, darauf aus, auf welchen Repositorys in deiner Organisation der Workflow ausgeführt wird. Erforderliche Workflows, die in öffentlichen Repositorys gespeichert sind, werden für alle Repositorys ausgeführt. Erforderliche Workflows, die in privaten Repositorys gespeichert sind, werden nur in anderen privaten Repositorys ausgeführt. Erforderliche Workflows, die in internen Repositorys gespeichert sind, werden in internen und privaten Repositorys ausgeführt.
- Erforderliche Workflows können nicht für die Ausführung im Repository konfiguriert werden, in dem der Workflow erstellt wird. Du solltest erwägen, ein separates Repository zu erstellen, um deinen erforderlichen Workflows zu speichern.
- Wenn du einen erforderlichen Workflow für die Ausführung in allen oder ausgewählten Repositorys konfigurierst, werden erforderliche Workflows nicht in Repositorys ausgeführt, in denen Aktionen in den Organisationseinstellungen deaktiviert sind.
Anzeigen von Workflowausführungen für erforderliche Workflows
Nachdem ein erforderlicher Workflow mindestens einmal in einem Repository ausgeführt wurde, kannst du seine Workflowausführungen auf der Registerkarte „Aktionen“ dieses Repositorys anzeigen. Um Änderungen an den in einer Organisation erforderlichen Workflows vorzunehmen, musst du dich an einen Organisationsbesitzerin wenden. Um Änderungen an einem erforderlichen Workflow selbst vorzunehmen, kann jeder, der über Schreibberechtigungen für das Repository verfügt, das den erforderlichen Workflow enthält, Änderungen daran vornehmen.
-
Navigiere auf GitHub.com zur Hauptseite des Repositorys. 1. Klicke unter deinem Repositorynamen auf Aktionen.
-
In der linken Seitenleiste kannst du Workflowausführungen für erforderliche Workflows unter „Erforderliche Workflows“ anzeigen.
Hinzufügen eines erforderlichen Workflows zu einer Organisation
Organisationsbesitzer*innen können erforderliche Workflows in ihrer Organisation konfigurieren. Weitere Informationen findest du unter GitHub Actions für deine Organisation Deaktivieren oder Einschränken.