Intégrer à des crochets de service

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Les hooks de service vous permettent d’exécuter des tâches sur d’autres services lorsque des événements se produisent dans votre projet dans Azure DevOps.

Par exemple, vous pouvez créer une carte dans Trello lorsqu’un élément de travail est créé ou envoyer une notification Push aux appareils mobiles de votre équipe en cas d’échec d’une génération. Vous pouvez également utiliser des hooks de service dans des applications et des services personnalisés comme moyen plus efficace de générer des activités lorsque des événements se produisent dans vos projets.

Comment fonctionnent les hooks de service ?

Les éditeurs de hook de service définissent un ensemble d’événements auxquels vous pouvez vous abonner. Les abonnements écoutent ces événements et définissent des actions à entreprendre en fonction de l’événement.

Les abonnements ciblent également les consommateurs, qui sont des services externes qui peuvent exécuter leurs propres actions lorsque des événements se produisent.

Diagramme des hooks de service.

Remarque

Les hooks de service nécessitent l’autorisation des plages d’adresses IP pour la connexion entrante aux points de terminaison de service. Le point de terminaison de service est l’ensemble des propriétés fournies à un hook de service. Pour plus d’informations, consultez Listes d’adresses autorisées et connexions réseau, adresses IP et restrictions de plage.

Services disponibles

Les services suivants sont disponibles en tant que cible de hooks de service. Pour plus d’informations sur d’autres applications et services qui s’intègrent à Azure DevOps, accédez à Visual Studio Marketplace.

Service Événements pris en charge Actions prises en charge
App Center Élément de travail mis à jour Envoyer une notification. Les abonnements sont gérés via App Center.
AppVeyor Code envoyé (push) Déclenchez une build AppVeyor. Les abonnements sont gérés via AppVeyor.
Azuqua Tous Publiez l’événement sur FLO. Les abonnements sont gérés via Azuqua.
Azure App Service Code envoyé (push) Déployer une application web. Les abonnements sont gérés via Azure App Service.
Azure Service Bus Tous Envoyez un message à une rubrique Notification Hub, File d’attente Service Bus ou Service Bus. L’abonnement est géré via Azure App Service.
Stockage Azure Tous Insérez un message dans une file d’attente de stockage.
Bambou Build completed, Code pushed Mettre en file d’attente une build.
Datadog Tous Publiez un événement dans Datadog.
Grafana Déploiement de mise en production effectué Ajoutez une annotation à la base de données Grafana.
Jenkins Build completed, code pushed, pr merge tentative, release deployment completed Déclenchez une build générique ou Git.
Microsoft Teams Tous Publiez un message sur un canal. Les abonnements sont gérés dans Microsoft Teams.
MyGet Génération terminée, code envoyé (push) Publiez le package NuGet sur MyGet. Déclenchez une build MyGet. Les abonnements sont gérés par MyGet.
Office 365 Tous Publiez un message dans un groupe.
Slack Tous Publiez un message sur un canal.
Trello Tous Créez une carte ou une liste.
UserVoice Élément de travail créé, élément de travail mis à jour Envoyer un événement d’élément de travail lié. Les abonnements sont gérés via UserVoice.
Web Hooks Tous Publier via HTTP.
Applications de messages d’espace de travail Tous Envoyer des notifications. Les abonnements sont gérés via Workplace Message Apps.
Zapier Tous Envoyer une notification. Les abonnements sont gérés via Zapier.
Zendesk Élément de travail commenté sur Créez un commentaire privé dans un ticket.
Service Événements pris en charge Actions prises en charge
Azure Service Bus Tous Envoyez un message à une rubrique Notification Hub, File d’attente Service Bus ou Service Bus. L’abonnement est géré via Azure App Service.
Stockage Azure Tous Insérez un message dans une file d’attente de stockage.
Bambou Build completed, Code pushed Mettre en file d’attente une build.
Datadog Tous Publiez un événement dans Datadog.
Grafana Déploiement de mise en production effectué Ajoutez une annotation à la base de données Grafana.
Jenkins Build completed, code pushed, pr merge tentative, release deployment completed Déclenchez une build générique ou Git.
Microsoft Teams Tous Publiez un message sur un canal. Les abonnements sont gérés dans Microsoft Teams.
Office 365 Tous Publiez un message dans un groupe.
Slack Tous Publiez un message sur un canal.
Trello Tous Créez une carte ou une liste.
[UserVoice] ((https://www.uservoice.com) Élément de travail créé, élément de travail mis à jour Envoyer un événement d’élément de travail lié. Les abonnements sont gérés via UserVoice.
Web Hooks Tous Publier via HTTP.
Zendesk Élément de travail commenté sur Créez un commentaire privé dans un ticket.

Création d’un abonnement

Lorsque vous intégrez l’un de ces services à Azure DevOps, vous devez créer un abonnement. Dans de nombreux cas, vous devez également effectuer une configuration dans l’autre service. Pour plus d’informations, consultez les informations du service qui vous intéresse.

  1. Ouvrez la page d’administration d’un projet dans l’accès web.

    Capture d’écran du bouton Paramètres du projet mis en surbrillance.
  2. Exécutez l’Assistant pour créer l’abonnement.

    Capture d’écran du bouton mis en surbrillance, Créer un abonnement.

  3. Sélectionnez le service auquel vous souhaitez effectuer l’intégration.

    Sélectionnez le service à intégrer

  4. Sélectionnez l’événement à déclencher et tous les filtres applicables.

    Sélectionnez l’événement à déclencher et tous les filtres

  5. Sélectionnez une action à exécuter sur le service cible.

    Remarque

    La liste des actions disponibles peut être limitée en fonction du type d’événement que vous avez sélectionné.

    Capture d’écran montrant la sélection d’une action pour le service cible.

  6. Pour confirmer que les paramètres sont corrects, testez l’abonnement, puis terminez l’Assistant.

    Capture d’écran montrant la notification de test 1.

    Capture d’écran montrant la notification de test 2.

FAQ

Q : Quelles autorisations dois-je configurer un abonnement ?

R : Modifier les abonnements et afficher les abonnements. Par défaut, seuls les administrateurs de projet disposent de ces autorisations. Pour les accorder directement à d’autres utilisateurs, vous pouvez utiliser l’outil en ligne de commande ou l’API REST Sécurité.

Pour accorder l’autorisation d’affichage pour un groupe, consultez Définir l’autorisation Afficher pour un groupe dans la page Hooks de service.

Q : Quelles sont les implications de sécurité de l’octroi des autorisations Modifier les abonnements et afficher les abonnements ?

R : L’utilisateur disposant de ces autorisations peut voir tous les abonnements créés dans le projet et l’historique des notifications pour ces abonnements. Cet utilisateur peut ensuite créer n’importe quel type d’abonnement de hook de service dans ce projet. Si l’utilisateur configure un abonnement pour une ressource qu’il n’est pas autorisé à accéder, l’abonnement n’est pas déclenché.

Par exemple : Les abonnements que vous créez pour les événements de mise à jour d’élément de travail dans le chemin d’accès de zone XYZ n’envoient pas de notifications si vous n’avez pas accès à ces éléments de travail. Toutefois, vous pouvez voir l’historique des notifications d’autres utilisateurs qui ont accès à ces éléments de travail.

Q : Puis-je créer des abonnements de hook de service pour un projet par programmation ?

A : Oui. Pour plus d’informations, consultez Créer un abonnement de hooks de service.

Q : Puis-je supprimer l’accès d’une application à mon organisation une fois que je l’ai autorisé ?

A : Oui. Vous pouvez révoquer des autorisations de votre profil.

  1. Accédez à votre page de profil à partir de https://visualstudio.microsoft.com/.

    Veillez à commencer à partir du site Visual Studio (https://visualstudio.microsoft.com/) au lieu de votre organisation (https://dev.azure.com/{orgName}) car votre profil accessible à partir de votre organisation vous amène à une implémentation incorrecte de la fonctionnalité de gestion des autorisations.

  2. Gérez vos autorisations.

    Capture d’écran montrant le bouton Gérer les applications en surbrillance.

  3. Révoquez les autorisations que vous ne souhaitez plus autoriser.

    Capture d’écran montrant l’option Revoke pour les autorisations.

Q : Pourquoi ne pouvons-nous plus configurer des hooks de service pour HipChat ?

R : Atlassian a officiellement abandonné le support pour HipChat. Pour plus d'informations, consultez Annonce.