Nous avons déprécié les services GitHub en faveur de l’intégration des webhooks. Ce guide vous aide à passer des services GitHub aux webhooks. Pour plus d’informations sur cette annonce, consultez le billet de blog.
Pour remplacer le service de messagerie, vous pouvez maintenant commencer à utiliser des notifications par e-mail pour les poussées dans votre dépôt. Consultez « À propos des notifications par e-mail pour les envois (push) vers votre référentiel » pour savoir comment configurer les notifications de commit par e-mail.
Chronologie de dépréciation
- 1er octobre 2018 : GitHub a arrêté d’autoriser les utilisateurs à installer des services. Nous avons supprimé les services GitHub de l’interface utilisateur GitHub.com.
- 29 janvier 2019 : pour remplacer le service de messagerie, vous pouvez maintenant commencer à utiliser des notifications par e-mail pour les poussées dans votre dépôt. Consultez « À propos des notifications par e-mail pour les envois (push) vers votre référentiel » pour savoir comment configurer les notifications de commit par e-mail.
- 31 janvier 2019 : GitHub cesse de fournir les événements des services installés sur GitHub.com.
Arrière-plan des services GitHub
Les services GitHub (parfois appelé « crochets de service ») constituent la méthode héritée d’intégration selon laquelle GitHub hébergeait une partie des services de notre intégrateur dans le dépôt github-services
. Les actions effectuées sur GitHub déclenchent ces services, et vous pouvez les utiliser à leur tour pour déclencher des actions en dehors de GitHub.
Services GitHub et webhooks
Les principales différences entre les services GitHub et les webhooks sont les suivantes :
- Configuration : les services GitHub ont des options de configuration propres à chaque service, tandis que les webhooks sont simplement configurés en spécifiant une URL et un ensemble d’événements.
- Logique personnalisée : les services GitHub peuvent avoir une logique personnalisée pour répondre avec plusieurs actions dans le cadre du traitement d’un même événement, tandis que les webhooks n’ont pas de logique personnalisée.
- Types de requêtes : les services GitHub peuvent effectuer des requêtes HTTP et non-HTTP, tandis que les webhooks peuvent uniquement effectuer des requêtes HTTP.
Remplacement des services par des webhooks
Pour remplacer les services GitHub par des webhooks :
-
Identifiez les événements de webhook pertinents auxquels vous devez vous abonner dans cette liste.
-
Changez votre configuration en fonction de votre utilisation actuelle des services GitHub :
- Applications GitHub : mettez à jour les autorisations de votre application et les événements souscrits afin de configurer votre application pour qu’elle reçoive les événements de webhook appropriés.
- Applications OAuth : demandez la ou les étendues
repo_hook
et/ouorg_hook
afin de gérer les événements appropriés pour le compte des utilisateurs. - Fournisseurs de services GitHub : demandez aux utilisateurs de configurer manuellement un webhook avec les événements appropriés et de vous l’envoyer, ou créez une application pour gérer cette fonctionnalité. Pour plus d’informations, consultez « À propos de la création d’applications GitHub ».
-
Déplacez une configuration supplémentaire extérieure à GitHub. Certains services GitHub nécessitent une configuration personnalisée supplémentaire dans la page de configuration de GitHub. Si c’est le cas de votre service, vous devez déplacer cette fonctionnalité dans votre application, ou utiliser des applications GitHub ou OAuth en fonction des besoins.
Prise en charge de GitHub Enterprise Server
- GitHub Enterprise Server 2.17 : GitHub Enterprise Server version 2.17 et ultérieure n’autorise plus les administrateurs à installer des services. Les administrateurs peuvent encore modifier les crochets de service existants et recevoir des crochets de service dans GitHub Enterprise Server version 2.17 à 2.19. Pour remplacer le service de messagerie, vous pouvez utiliser des notifications par e-mail pour les poussées dans votre dépôts dans GitHub Enterprise Server 2.17 et versions ultérieures. Consultez ce billet de blog pour en savoir plus.
- GitHub Enterprise Server 2.20 : GitHub Enterprise Server version 2.20 et ultérieure cesse de remettre l’ensemble des événements des services installés.
La version 2.17 de GitHub Enterprise Server est la première version qui n’autorise pas les administrateurs à installer des services GitHub. Nous prenons en charge seulement les services GitHub existants jusqu’à la version 2.20 de GitHub Enterprise Server. Nous acceptons également tous les patchs critiques de votre service GitHub s’exécutant sur GitHub Enterprise Server jusqu’au 1er octobre 2019.
Migration avec notre aide
Contactez-nous si vous avez des questions.
Globalement, le processus de migration implique généralement :
- Identification d’où est quand votre produit utilise les services GitHub.
- Identification des événements de webhook correspondants que vous devez configurer pour passer aux webhooks.
- Implémentation de la conception avec des OAuth Apps ou des GitHub Apps. Les GitHub Apps sont préférées. Pour en savoir plus sur la raison pour laquelle les GitHub Apps sont préférées, consultez « Migration d’applications OAuth vers des applications GitHub ».