Créer un hook de service pour Azure DevOps avec Jenkins

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

Si vous utilisez Jenkins pour créer vos applications, vous pouvez stocker votre code dans Azure DevOps et continuer à utiliser Jenkins pour vos builds d’intégration continue. Vous pouvez déclencher une build Jenkins lorsque vous envoyez du code au dépôt Git de votre projet ou que vous archivez du code dans le contrôle de version Team Foundation.

Important

Azure DevOps ne prend plus en charge l’authentification d’autres informations d’identification depuis le 2 mars 2020. Si vous utilisez toujours d’autres informations d’identification, nous vous encourageons vivement à passer à une méthode d’authentification plus sécurisée (par exemple, les jetons d’accès personnels). Plus d’informations

Configurer Jenkins

  1. Si ce n’est pas déjà fait, configurez un serveur Jenkins .

  2. Si vous configurez Jenkins localement, activez HTTPS.

  3. Ajoutez ou modifiez hudson.plugins.git.GitStatus.NOTIFY_COMMIT_ACCESS_CONTROL la propriété systèmecomme désactivée avant le paramètre -jar à l’intérieur de la <arguments> balise dans jenkins.xml fichier de configuration.

    -Dhudson.plugins.git.GitStatus.NOTIFY_COMMIT_ACCESS_CONTROL=disabled

Configurer une build Jenkins

  1. Dans Jenkins, créez un élément.

    Lien nouvel élément dans Jenkins
  2. Créez le type de build approprié pour votre projet.

    Nom et type de build dans Jenkins
  3. Définissez l’URL de votre dépôt Git dans Azure DevOps Services. L’URL se présente sous la forme https://dev.azure.com/{orgName}/DefaultCollection/_git/{projectName}.

    Paramètres de gestion du code source avec Git sélectionné

Déclencher Jenkins

  1. Accédez à la page Hooks de service de votre projet :

    https://{orgName}/{project_name}/_settings/serviceHooks

    Capture d’écran de la page d’administration de projet, Azure DevOps Server 2019 et plus.

    Sélectionnez Créer l'abonnement.

  2. Ajoutez Jenkins.

    Boîte de dialogue Sélectionner le service cible, Jenkins sélectionné
  3. Choisissez l’événement dans Azure DevOps Services que vous souhaitez déclencher une build Jenkins.

    Boîte de dialogue Configurer l’événement
  4. Configurez l’action à effectuer dans Jenkins.

    Boîte de dialogue Nouvel abonnement de raccordement de service

Maintenant, lorsque cet événement se produit dans Azure DevOps Services, votre build Jenkins est déclenchée.

Tarifs

Azure DevOps Services ne facture pas l’infrastructure pour l’intégration à des services externes. Consultez le site du service spécifique pour connaître les tarifs liés à ses services.

Questions et réponses

Q : Puis-je créer une partie de mon application dans Azure DevOps Services et une partie dans Jenkins ?

A : Oui. Vous pouvez déclencher une build Jenkins lorsque votre build Azure DevOps Services est terminée afin d’utiliser les deux systèmes pour générer votre application.

Q : Puis-je créer des abonnements par programmation ?

R : Oui, utilisez des API REST.