Informationen zum Empfangen von Webhooks mit GitHub CLI
Wenn du Änderungen am Integrationscode vornimmst, kannst den Code in einer lokalen Umgebung ausführen, um ihn schnell zu testen und zu durchlaufen, ohne den Code bereitstellen zu müssen. Du kannst GitHub CLI verwenden, um Webhooks an deine lokale Umgebung weiterzuleiten.
Die Weiterleitung von Webhooks in der GitHub CLI funktioniert nur mit den Repository- und den Organisationswebhooks. Wenn Sie andere Webhooks lokal testen möchten, müssen Sie dies manuell tun. Weitere Informationen finden Sie unter Testen von Webhooks.
Warnung
Die Webhookweiterleitung ist nur für die Verwendung bei Tests und Entwicklung konzipiert. Sie wird nicht für die Verwendung in Produktionsumgebungen zur Verarbeitung von Live-Webhooks unterstützt.
Empfangen von Webhooks mit GitHub CLI
Hinweis
Weitere Informationen zur GitHub CLI findest du unter Informationen zu GitHub CLI.
-
Verwende den Unterbefehl
extension install, um die GitHub CLI-Erweiterung zu installieren, um die Webhookweiterleitung zu aktivieren.gh extension install cli/gh-webhook -
Wenn du Organisationswebhooks weiterleiten möchtest, fügst du deiner GitHub CLI-Anmeldung den Bereich
admin:org_hookhinzu, damit du die erforderlichen Berechtigungen erhältst.gh auth refresh --scopes admin:org_hook -
Starte die Anwendung lokal, und beachte dabei die URL, wo die Webhooks empfangen werden sollen. In diesem Leitfaden wird davon ausgegangen, dass deine Anwendung bei
http://localhost:3000/webhookauf Webhook-Ereignisse lauscht. -
Führe den Unterbefehl
webhook forwardaus, um Webhooks einzurichten, die an deine Anwendung übermittelt werden sollen. ErsetzeREPOSITORYdurch den Namen deines Repositorys. Beispiel:monalisa/octocat. ErsetzeEVENTSdurch eine durch Trennzeichen getrennte Liste der Ereignisse, die du empfangen möchtest. Beispiel:issues,pull_request. Ersetzen SieURLdurch die lokale URL, bei der Ihre Anwendung erwartet, Webhooks zu empfangen. Beispiel:"http://localhost:3000/webhook". Ersetze das--repo-Flag durch das--org-Flag, um an Organisationswebhooks anstelle von Repositorywebhooks zu lauschen. Beispiel:--org="octo-org".gh webhook forward --repo=REPOSITORY --events=EVENTS --url=URL
Lassen Sie den Befehl im Hintergrund laufen. Es empfängt alle angegebenen Ereignisse für das angegebene Repository und leitet sie an Ihren Webhook-Handler weiter, der unter der angegebenen URL ausgeführt wird.
Hinweis
Für jedes Repository und jede Organisation kann jeweils nur eine Person die Webhook-Weiterleitung verwenden. Wenn du versuchst, die Webhookweiterleitung einzurichten, und eine andere Person bereits mit dieser Organisation oder diesem Repository arbeitet, erhältst du die Fehlermeldung Hook already exists.