Configurer une stratégie de branche pour un service externe

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

Les stratégies de branche sont une fonctionnalité puissante pour garantir un code de haute qualité dans votre référentiel en établissant des exigences pour toutes les demandes de tirage. Les services externes peuvent utiliser l’API d’état de la demande de tirage pour publier un état détaillé sur vos demandes de tirage. La stratégie de branche pour les services externes permet aux services tiers de participer au flux de travail de demande de tirage et d’établir des exigences de stratégie. Cet article vous guide tout au long du processus de configuration d’une stratégie de branche pour un service qui publie l’état de la demande de tirage. Pour plus d’informations sur l’état des demandes de tirage, consultez Personnaliser et étendre les flux de travail de demande de tirage avec l’état des demandes de tirage.

Prérequis

  • Une organisation dans Azure DevOps avec un référentiel Git. Si vous n’avez pas d’organisation, inscrivez-vous pour charger et partager du code dans des référentiels Git privés gratuits illimités.
  • Service qui publie l’état sur les demandes de tirage. Consultez Créer un serveur d’état de demande de tirage.

Configurer la stratégie de branche

  1. Accédez aux branches>de code et recherchez la branche sur laquelle vous souhaitez configurer la stratégie (généralement main ou develop). Dans le menu contextuel, sélectionnez l’option Stratégies de branche.

    Sélectionner des stratégies de branche dans le menu contextuel

  2. Faites défiler vers le bas pour rechercher les Vérifications d’état. Sélectionnez le bouton +.

    Sélectionnez le bouton Ajouter une stratégie

  3. Sélectionnez le service pour lequel vous souhaitez créer une stratégie dans la liste. Si l’état a été publié précédemment, vous pouvez le sélectionner dans la liste ; s’il s’agit d’une nouvelle stratégie, vous pouvez taper le nom de la stratégie.

    Sélectionnez la stratégie dans la liste

    • L’exigence de stratégie détermine si cette stratégie est facultative ou requise pour effectuer des demandes de tirage dans la branche.
    • L’identité autorisée est utilisée pour imposer que les états provenant uniquement de l’identité spécifiée soient pris en compte dans l’application de la stratégie.
    • Les conditions de réinitialisation sont utilisées pour déterminer quand un état publié n’est plus valide. Si l’état publié est spécifique au code le plus récent (par exemple, une build), vérifiez l’état de réinitialisation chaque fois qu’il existe de nouvelles modifications pour réinitialiser l’état lorsque la branche source change.
    • Si vous le souhaitez, définissez un filtre Chemin d'accès. En savoir plus sur les filtres Chemin d’accès dans les stratégies de branche.
    • L’applicabilité de la stratégie détermine si cette stratégie s’applique dès qu’une demande de tirage est créée ou si la stratégie s’applique uniquement une fois que le premier état est publié dans la demande de tirage.
    • Le nom d’affichage par défaut vous permet de spécifier un nom d’affichage facultatif pour votre stratégie.

Créer une nouvelle demande de tirage (pull request)

  1. Créez une demande de tirage dans la branche où la stratégie est définie. Pour plus d’informations, consultez Créer une demande de tirage.

  2. Après avoir créé la demande de tirage, la nouvelle stratégie apparaît dans la section Stratégies de la vue détails de la demande de tirage. Initialement, la stratégie apparaît comme n’étant pas définie tant que le service externe n’a pas publié l’état.

    L’état de la stratégie est visible dans la section Stratégies

    Lorsque le service a publié l’état, la stratégie est mise à jour en conséquence. La saisie semi-automatique sera bloquée jusqu’à ce que la stratégie approuve la demande de tirage.

    Mises à jour de l’état de la stratégie

    Lorsque les critères de stratégie sont remplis et que le service affiche un état succeeded, la demande de tirage sera approuvée et l’achèvement sera débloqué.

    État de la stratégie approuvé et déblocage terminé

Récapitulatif

Dans cet article, vous avez appris à configurer une stratégie de branche pour un service externe.