Skip to main content

Receber webhooks com a CLI do GitHub

É possível usar o GitHub CLI para testar webhooks no ambiente de desenvolvimento sem a complexidade do encaminhamento de porta ou de ferramentas de terceiros.

Sobre como receber webhooks com GitHub CLI

Observação: o recebimento de webhooks com GitHub CLI está atualmente em versão beta pública limitada e sujeito a alterações. Para criar uma conta na versão beta, responda à discussão da comunidade do GitHub. Talvez você não seja adicionado imediatamente. Uma notificação será enviada por email assim que você for adicionado à versão beta.

Ao fazer alterações no código de integração, execute-o em um ambiente local para testar e iterar rapidamente sem precisar realizar implantações. É possível usar GitHub CLI para encaminhar webhooks ao ambiente local.

Observação: o encaminhamento de webhooks no GitHub CLI só funciona com os webhooks de repositório e organização. Para testar webhooks de patrocínio, GitHub App, empresa ou marketplace localmente, faça isso manualmente. Para obter mais informações, confira "Como criar webhooks".

Como receber webhooks com a GitHub CLI

Para saber mais sobre a GitHub CLI, confira "Sobre a GitHub CLI".

  1. Para instalar a extensão de GitHub CLI a fim de habilitar o encaminhamento de webhook, use o subcomando extension install.

    gh extension install cli/gh-webhook
    
  2. Inicie o aplicativo localmente e anote a URL em que ele espera receber webhooks. Este guia pressupõe que o aplicativo está ouvindo eventos de webhook em http://localhost:3000/webhook.

  3. Para configurar os webhooks para serem entregues ao aplicativo, execute o subcomando webhook forward. Substitua REPOSITORY pelo nome do repositório. Por exemplo, monalisa/octocat. Substitua EVENTS por uma lista separada por vírgulas dos eventos que você deseja receber. Por exemplo, issues,pull_request. Substitua URL pela URL local em que o aplicativo espera receber webhooks. Por exemplo, "http://localhost:3000/webhook". Para escutar webhooks de organização em vez de webhooks de repositório, substitua o sinalizador --repo pelo sinalizador --org. Por exemplo, --org="octo-org".

    gh webhook forward --repo=REPOSITORY --events=EVENTS --url=URL
    

    Deixe o comando em execução em segundo plano. Ele receberá todos os eventos especificados para o repositório indicado e os encaminhará para o manipulador de webhook em execução na URL especificada.