Skip to main content

Utilisation de l'interface CLI GitHub pour transférer des webhooks à des fins de test

Vous pouvez utiliser l’GitHub CLI pour tester des webhooks dans votre environnement de dĂ©veloppement sans la complexitĂ© associĂ©es au transfert de port ou Ă  des outils tiers.

À 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

La redirection des webhooks n'est conçue que pour ĂȘtre utilisĂ©e 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

Remarque

Pour plus d’informations sur GitHub CLI, consultez À propos de GitHub CLI.

  1. 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
    
  2. 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
    
  3. 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.

  4. Pour configurer des webhooks Ă  remettre Ă  votre application, exĂ©cutez la sous-commande webhook forward. Remplacez REPOSITORY par le nom de votre dĂ©pĂŽt. Par exemple : monalisa/octocat. Remplacez EVENTS par une liste sĂ©parĂ©e par des virgules des Ă©vĂ©nements que vous souhaitez recevoir. Par exemple : issues,pull_request. Remplacez URL 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.