À propos de la réception de webhooks avec l’GitHub CLI
Lorsque vous apportez des modifications à votre code d’intégration, l’exécution du code dans un environnement local vous permet d’effectuer des tests et des itérations rapidement sans déployer le code. Vous pouvez utiliser l’GitHub CLI pour transférer des webhooks vers votre environnement local.
Le transfert de webhooks dans GitHub CLI fonctionne seulement avec les webhooks de dépôt et d’organisation. Si vous souhaitez tester d’autres types de webhooks localement, vous devez le faire manuellement. Pour plus d’informations, consultez « Test de webhooks ».
Avertissement : Le transfert de webhooks est conçu seulement pour être utilisé lors des tests et du développement. Il n’est pas pris en charge pour une utilisation dans les environnements de production pour la gestion des webhooks dynamiques.
Réception de webhooks avec l’GitHub CLI
Pour plus d’informations sur GitHub CLI, consultez « À propos de GitHub CLI ».
-
Pour installer l’extension GitHub CLI afin d’activer le transfert de webhooks, utilisez la sous-commande
extension install
.gh extension install cli/gh-webhook
-
Si vous souhaitez transférer des webhooks d’organisation, ajoutez l’étendue
admin:org_hook
à votre connexion GitHub CLI afin d’avoir les autorisations requises.gh auth refresh --scopes admin:org_hook
-
Démarrez votre application localement, puis notez l’URL où elle s’attend à recevoir des webhooks. Ce guide suppose que votre application écoute les événements de webhook à l’adresse
http://localhost:3000/webhook
. -
Pour configurer des webhooks à remettre à votre application, exécutez la sous-commande
webhook forward
. RemplacezREPOSITORY
par le nom de votre dépôt. Par exemple :monalisa/octocat
. RemplacezEVENTS
par une liste séparée par des virgules des événements que vous souhaitez recevoir. Par exemple :issues,pull_request
. RemplacezURL
par l’URL locale où votre application s’attend à recevoir des webhooks. Par exemple :"http://localhost:3000/webhook"
. Pour écouter des webhooks d’organisation plutôt que des webhooks de dépôt, remplacez l’indicateur--repo
par l’indicateur--org
. Par exemple,--org="octo-org"
.gh webhook forward --repo=REPOSITORY --events=EVENTS --url=URL
Laissez la commande s’exécuter en arrière-plan. Elle recevra tous les événements spécifiés pour le dépôt indiqué et les transfère à votre gestionnaire de webhooks en cours d’exécution à l’URL spécifiée.
Remarque : Une seule personne peut utiliser le transfert de webhooks à la fois pour chaque dépôt et chaque organisation. Si vous essayez de configurer le transfert de webhooks et qu’une autre personne travaille déjà avec cette organisation ou ce dépôt, vous recevez une erreur Hook already exists
.