Receber eventos do GitHub e do GitLab | Desenvolvedores Steel
Receber eventos do GitHub e do GitLab
Configure o webhook do repositório para o Steel espelhar nos chamados o estado de issues, pull requests e merge requests, e teste a entrega com uma assinatura de verdade.
Nesta página
O que o Steel faz com os eventos
Com o GitHub ou o GitLab conectado, um chamado de problema ou de mudança
pode ter issues, pull requests e merge requests vinculados. Quando um deles é
fechado, reaberto ou mesclado, o repositório avisa o Steel por webhook e o Steel:
atualiza o estado do vínculo no chamado (aberta, fechada ou mesclada);
registra o evento no histórico do chamado;
publica uma mensagem no chamado e, se configurado, sugere avançar a fase.
Quem move a fase é sempre o agente.
Eventos de itens que não estão vinculados a nenhum chamado são aceitos e não
fazem nada.
1. Conecte o repositório no Steel
Em Ajustes › Integrações, conecte o GitHub ou o GitLab com:
Repositório (dono/repositório) ou projeto (grupo/projeto; no GitLab
self-managed, informe também a URL da instância);
Token de acesso: no GitHub, um token fine-grained com Issues e Pull
requests em leitura e escrita; no GitLab, um token pessoal, de projeto ou de
grupo com escopo api;
Segredo do webhook: pelo menos 16 caracteres. Gere um com:
openssl rand -hex 24
A tela mostra a URL do webhook para cadastrar no repositório. Sem segredo, o
Steel recusa as entregas.
2. Cadastre o webhook no GitHub
Em Settings › Webhooks › Add webhook do repositório:
Dá para simular uma entrega do GitHub assinando um corpo com o mesmo segredo,
exatamente como o GitHub faz. A assinatura é o HMAC-SHA256 do corpo bruto,
em hexadecimal, com o prefixo sha256=: