Déployer plusieurs branches à différentes étapes avec des pipelines de mise en production classiques

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

Les pipelines de mise en production classiques offrent un moyen graphique de configurer la livraison continue pour votre application. Vous pouvez configurer une version pour qu'elle se déclenche automatiquement lorsqu'un nouvel artefact est disponible, puis utiliser des filtres d'artefact pour mapper des branches spécifiques à des phases spécifiques. Cette approche vous permet de déployer chaque branche à l’étape que vous envisagez. Cet article vous guide tout au long de la configuration d’un pipeline de mise en production classique qui se déploie sur différentes étapes en fonction de la branche source.

Prérequis

Produit Exigences
Azure DevOps - Organisation Azure DevOps.
- Un projet Azure DevOps.
- Un pipeline de travail configuré pour votre référentiel afin de compiler votre projet et générer un artefact de pipeline. Créez un pipeline classique si vous n’en avez pas déjà un.

Créer un pipeline de déploiement classique

Dans cette section, vous allez créer le pipeline de mise en production classique de base et configurer la première étape (Dev). Vous ajoutez une source d’artefact, activez la création automatique de versions et appliquez un filtre d’artefact pour que cette étape ne s'exécute que lorsque la compilation provient de la branche Dev.

  1. Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Pipelines>Livraisons.

  3. Créez un pipeline de mise en production classique :

    • S’il s’agit de votre premier pipeline de mise en production, sélectionnez Nouveau pipeline.
    • Si vous avez déjà des pipelines de mise en production, sélectionnez Nouveau>pipeline de mise en production.
  4. Dans le sélecteur de modèles, sélectionnez Démarrer avec un travail vide.

  5. Sous Étapes, sélectionnez l’étape par défaut et renommez-la en Dev. Dans les étapes suivantes, vous configurez cette étape pour déployer uniquement lorsqu’un artefact est généré à partir de la branche Dev .

    Capture d'écran montrant comment renommer une étape dans un pipeline de publication classique.

  6. Sous Artefacts, sélectionnez Ajouter.

  7. Configurez la source de l’artefact :

    • Sélectionnez votre type de source.
    • Renseignez les champs requis pour ce type de source, comme le projet, le pipeline et la version par défaut.
    • Cliquez sur Ajouter.

    Une capture d'écran qui montre comment ajouter un artefact à un pipeline de diffusion classique.

  8. Sélectionnez l’icône de déclencheur de déploiement continu sur l’artefact, puis activez le déclencheur de déploiement continu pour créer une version chaque fois qu’un nouvel artefact est disponible.

    Capture d’écran montrant comment activer le déclencheur de déploiement continu dans un pipeline de mise en production classique.

  9. Dans la phase de développement , sélectionnez l’icône conditions de prédéploiement .

  10. Définissez le déclencheur de déploiementsur Après la mise en production afin que la phase démarre automatiquement chaque fois qu’une nouvelle version est créée.

  11. Toujours dans les conditions de prédéploiement, configurez le filtrage basé sur les branches :

    • Activez les filtres Artifact.
    • Cliquez sur Ajouter.
    • Sélectionnez l’artefact que vous avez ajouté précédemment.
    • Définissez la branche de construction sur Dev.

    Avec ce filtre en place, la phase de développement se déploie uniquement lorsque la version est créée à partir d’une build de la branche Dev .

    Capture d’écran montrant comment configurer les conditions de prédéploiement dans un pipeline de mise en production classique.

Ajouter une nouvelle étape

Dans cette section, vous ajoutez une deuxième étape (Prod) au même pipeline de mise en production et configurez-la pour le déployer uniquement lorsque les artefacts sont générés à partir de la branche principale . Cela vous permet de maintenir la cohérence du routage de branche à étape entre les environnements.

  1. Connectez-vous à votre organisation Azure DevOps puis accédez à votre projet.

  2. Sélectionnez Pipelines>Versions, ouvrez le pipeline de release que vous avez créé précédemment, puis sélectionnez Modifier.

  3. Sous Étapes, sélectionnez Ajouter une>nouvelle étape.

  4. Dans le sélecteur de modèles, sélectionnez Démarrer avec un travail vide.

  5. Sélectionnez la nouvelle étape et renommez-la en Prod. Dans les étapes suivantes, vous configurez cette étape pour qu’elle se déploie uniquement lorsque l’artefact provient de la branche principale .

  6. Dans l’étape Prod , sélectionnez l’icône conditions de prédéploiement .

  7. Définissez le déclencheur de déploiementsur Après la mise en production afin que cette étape puisse démarrer automatiquement lorsqu’une nouvelle version est créée.

  8. Toujours dans les conditions de prédéploiement, configurez le filtrage basé sur les branches pour la production :

    • Activez les filtres Artifact.
    • Cliquez sur Ajouter.
    • Sélectionnez la même source d’artefact que celle que vous avez configurée précédemment.
    • Définissez la branche build sur main.

    Avec ce filtre en place, l’étape Prod se déploie uniquement lorsque la version est créée à partir d’une build de la branche principale .

    Capture d’écran montrant comment configurer des conditions de prédéploiement pour la phase de production dans un pipeline de mise en production Classique.

Déployer vers une étape spécifique

À ce stade, votre pipeline de mise en production est configuré pour router les déploiements par branche : les artéfacts de la branche Dev se déploient vers l’environnement Dev et les artéfacts de la branche main se déploient sur l’environnement Prod. Utilisez les vérifications suivantes pour vérifier que les filtres de branche fonctionnent comme prévu.

  1. Déclenchez une build à partir de la branche Dev afin qu’une nouvelle version d’artefact soit publiée.

  2. Ouvrez les pipelines>Releases, puis ouvrez le release nouvellement créé.

  3. Vérifiez que l’étape Dev démarre (ou est mise en file d’attente) et que l’étape Prod est ignorée, car la branche d'artefact ne répond pas aux critères du filtre.

  4. Déclenchez une deuxième build à partir de la branche principale .

  5. Ouvrez la nouvelle version et vérifiez le comportement opposé : l’étape Prod démarre et l’étape de développement est ignorée.

  6. Si une étape ne se comporte pas comme prévu, ouvrez les conditions de prédéploiement de cette étape et confirmez la valeur de branche des filtres d’artefacts et la source d’artefact sélectionnée.

En validant les deux chemins de branche, vous pouvez confirmer que chaque environnement se déploie uniquement à partir de la branche destinée à cette étape.