Skip to main content

Substituir os GitHub Services

Se você ainda depende dos serviços obsoletos do GitHub, aprenda como migrar seus hooks de serviço para webhooks.

Nós tornamos o GitHub Services obsoletos em favor da integração com webhooks. Este guia ajuda você a fazer a transição para webhooks dos serviços do GitHub. Para obter mais informações sobre esse comunicado, confira a postagem no blog.

Como uma alternativa ao serviço de e-mail, agora você pode começar a usar notificações por e-mail para push no repositório. Confira "Sobre as notificações por email para pushes no seu repositório" para saber como configurar as notificações de email de commit.

Linha do tempo da depreciação

  • 1º de outubro de 2018: o GitHub descontinuou a permissão aos usuários para instalação de serviços. Removemos o GitHub Services da interface de usuário do GitHub.com.
  • 29 de janeiro de 2019: como uma alternativa ao serviço de email, você já pode começar a usar as notificações por email para os pushes no seu repositório. Confira "Sobre as notificações por email para pushes no seu repositório" para saber como configurar as notificações de email de commit.
  • 31 de janeiro de 2019: o GitHub deixará de fornecer eventos de serviços instalados no GitHub.com.

Antecedentes do GitHub Services

O GitHub Services (às vezes chamado de Ganchos de Serviço) é o método herdado de integração, em que GitHub hospedava uma parte dos serviços do nosso integrador por meio do repositório github-services. Ações executadas no GitHub acionam esses serviços e você pode usá-los para acionar ações fora do GitHub.

Encontrar repositórios que usam o GitHub Services

Fornecemos um script de linha de comando que ajuda a identificar quais repositórios usam o GitHub Services. Para obter mais informações, confira ghe-legacy-github-services-report.

GitHub Services vs. webhooks

As principais diferenças entre o GitHub Services e webhooks:

  • Configuração: o GitHub Services tem opções de configuração específicas do serviço, enquanto os webhooks são configurados simplesmente pela especificação de uma URL e de um conjunto de eventos.
  • Lógica personalizada: o GitHub Services pode ter uma lógica personalizada para responder com várias ações como parte do processamento de um só evento, enquanto os webhooks não têm nenhuma lógica personalizada.
  • Tipos de solicitações: o GitHub Services pode fazer solicitações HTTP e que não são HTTP, enquanto os webhooks só podem fazer solicitações HTTP.

Substituir os serviços por webhooks

Para substituir GitHub Services por Webhooks:

  1. Identifique os eventos de webhook relevantes nos quais você precisará inscrever nesta lista.

  2. Altere sua configuração dependendo de como você usa atualmente os GitHub Services:

    • Aplicativos do GitHub: atualize as permissões e os eventos assinados do aplicativo para configurar seu aplicativo para receber os eventos de webhook relevantes.
    • Aplicativos OAuth: solicite os escopos repo_hook e/ou org_hook para gerenciar os eventos relevantes em nome dos usuários.
    • Provedores do GitHub Services: solicite aos usuários que configurem manualmente um webhook com os eventos relevantes enviados a você ou aproveite esta oportunidade para criar um aplicativo a fim de gerenciar essa funcionalidade. Para obter mais informações, confira "Sobre os aplicativos".
  3. Mover configuração adicional de fora do GitHub. Alguns GitHub Services exigem uma configuração adicional e personalizada na página de configuração do GitHub. Se o seu serviço fizer isso, você deverá mover esta funcionalidade para seu aplicativo ou depender dos aplicativos GitHub ou OAuth, quando necessário.

Compatibilidade com GitHub Enterprise Server

  • GitHub Enterprise Server 2.17: o GitHub Enterprise Server versão 2.17 ou superior descontinuará a permissão dos administradores de instalarem serviços. Os administradores continuarão podendo modificar hooks de serviço existentes e receber hooks de serviço no GitHub Enterprise Server para as versões 2.17 a 2.19. Como alternativa ao serviço de e-mail, você poderá usar notificações de e-mail para push para seu repositório no GitHub Enterprise Server com versão 2.17 ou superior. Confira esta postagem no blog para saber mais.
  • GitHub Enterprise Server 2.20: o GitHub Enterprise Server versão 2.20 e superior deixará de entregar todos os eventos de serviços instalados.

A versão 2.17 do GitHub Enterprise Server será a primeira versão que não permite que os administradores instalem o GitHub Services. Só suportaremos o GitHub Services existente até o lançamento da versão do GitHub Enterprise Server. Também aceitaremos quaisquer patches críticos o seu GitHub Services em execução em GitHub Enterprise Server até 1 de outubro de 2019.

Migrar com a nossa ajuda

Entre em contato conosco em caso de dúvidas.

Como uma visão geral de alto nível, o processo de migração normalmente envolve: