Partager via


Concepts clés d’Azure Pipelines

Azure DevOps Services

Cet article présente les principaux concepts et composants qui composent Azure Pipelines. Comprendre les termes de base et les parties d’un pipeline peuvent vous aider à générer, tester et déployer plus efficacement votre code.

Vue d’ensemble des concepts clés

Le graphique suivant montre les principaux composants et actions d’un pipeline.

Diagramme montrant les concepts clés d’un pipeline.

Dave Jarvis a contribué à ce graphique.

  • Un déclencheur manuel, planifié ou automatisé entraîne le démarrage d’un pipeline .
  • Un pipeline peut contenir une ou plusieurs étapes et effectuer un déploiement dans un ou plusieurs environnements.
  • Les phases sont un moyen d’organiser les pipelines, et chacune contient un ou plusieurs travaux.
  • Les travaux s’exécutent sur des agents ou peuvent être sans agent.
  • Chaque travail contient une ou plusieurs étapes.
  • Une étape est le plus petit élément d’un pipeline et peut être une tâche ou un script.
  • Une tâche est un script prépackagené qui effectue une action, telle que l’appel d’une API REST ou la publication d’un artefact de build.
  • Une exécution de pipeline produit des artefacts tels que des fichiers ou des packages.

Termes d’Azure Pipelines

Les termes suivants définissent les principaux composants et processus Azure Pipelines.

Agents

Un agent calcule l’infrastructure avec des logiciels d’agent installés qui exécutent un travail de pipeline à la fois. Par exemple, un travail peut s’exécuter sur un agent Ubuntu hébergé par Microsoft. Pour plus d’informations sur différents types d’agents et leur utilisation, consultez les agents Azure Pipelines.

Un nombre limité d’étapes de tâche peut s’exécuter sans utiliser d’agent. Pour plus d’informations, consultez opérations sans agent et tâches prises en charge.

Approbations et vérifications

Les approbations et les vérifications définissent un ensemble de validations requises avant l’exécution d’un pipeline ou d’une étape. L’approbation manuelle est une vérification courante du contrôle des déploiements dans des environnements de production. Si un environnement a configuré des vérifications et des approbations, les exécutions du pipeline s’interrompent jusqu’à ce que toutes les vérifications et approbations se terminent correctement.

Artéfacts

Les artefacts sont des collections de fichiers ou de packages publiés par une exécution et mis à la disposition des tâches de pipeline suivantes telles que la distribution ou le déploiement. Les artefacts dans Azure Pipelines sont différents d’Azure Artifacts, la partie d’Azure DevOps qui vous permet de stocker, de gérer et de partager des packages avec un seul flux.

Livraison continue

La livraison continue (CD) est un processus de génération, de test et de déploiement de code dans un ou plusieurs environnements de test et de production. Le déploiement et le test en plusieurs étapes facilitent la qualité en interceptant les erreurs tôt et souvent.

Les pipelines de publication CD automatisés peuvent consommer les artefacts issus des pipelines d'intégration continue (CI) pour publier de nouvelles versions et correctifs. La surveillance et les alertes constantes fournissent une visibilité sur le processus CD.

Intégration continue

L’intégration continue (CI) est un processus qui exécute des tests automatisés et se construit selon un planning, chaque fois que le code est envoyé ou dans les deux cas. CI simplifie les tests et la génération de code et aide à détecter les problèmes au début du cycle de développement lorsqu’ils sont plus faciles et plus rapides à corriger. Les pipelines CI produisent des artefacts que les pipelines CD peuvent utiliser pour les déploiements automatiques.

Déploiement

Pour les pipelines YAML, un travail de déploiement est une collection d’étapes qui s’exécutent séquentiellement sur un environnement. Les travaux de déploiement peuvent utiliser des stratégies telles que runOnce, rollinget canary. Pour en savoir plus, consultez Projets de déploiement.

Dans les pipelines classiques, le déploiement exécute les tâches de l’étape de déploiement, qui peuvent inclure l’exécution de tests automatisés, le déploiement d’artefacts de build et d’autres actions spécifiées.

Groupes de déploiement

Dans les pipelines de mise en production Azure Pipelines Classic, un groupe de déploiement est un groupe logique de machines cibles de déploiement. Chaque serveur cible du groupe de déploiement nécessite l’installation d’un agent de déploiement. Pour plus d’informations, consultez Provisionner des agents pour les groupes de déploiement.

Environnements

Un environnement est une collection de ressources telles que des machines virtuelles, des conteneurs, des applications web ou des services où vous déployez votre application. Les pipelines peuvent être déployés dans un ou plusieurs environnements après la compilation et l'exécution des tests.

Emplois

Un travail représente une limite d’exécution d’un ensemble d’étapes qui s’exécutent séquentiellement sur le même agent. Les phases de pipeline peuvent inclure un ou plusieurs travaux. Les travaux ne s’exécutent pas toujours de manière séquentielle par défaut.

Les tâches sont utiles pour exécuter une série d’étapes dans différents environnements. Par exemple, votre phase de génération peut contenir un travail pour la création d’une x86 configuration et d’un autre travail pour la création d’une x64 configuration.

Chaque tâche est exécutée sur un agent qui réalise toutes les étapes de ce travail. Un nombre limité d'étapes de tâches prend en charge les travaux qui s'exécutent sans agent. Pour plus d’informations, consultez opérations sans agent et tâches prises en charge.

Bibliothèque

La bibliothèque Azure Pipelines inclut des fichiers sécurisés et des groupes de variables. les fichiers sécurisés permettent de stocker des fichiers et de les partager entre les pipelines. Les groupes de variables stockent des valeurs et des secrets que vous pouvez transmettre à un pipeline YAML ou rendre disponibles sur plusieurs pipelines.

Conduites

Un pipeline Azure Pipelines définit un flux de travail pour les tâches de génération, de test et de déploiement, de l’exécution d’un fichier batch à l’automatisation du processus CI/CD pour une application. Un pipeline se compose d’une ou plusieurs étapes qui contiennent des travaux et des étapes.

Vous pouvez définir des pipelines à l’aide d’éditeurs YAML ou Classiques . Pour plus d'informations, consultez Pipelines YAML contre Classic.

Publications

Une version est un ensemble d’artefacts avec version spécifié dans un pipeline Classique. La version inclut un instantané de toutes les informations nécessaires à l’exécution du pipeline de mise en production, telles que les étapes, les tâches, les déclencheurs, les stratégies d’approbation et les options de déploiement. Vous pouvez créer une version manuellement, avec un déclencheur de déploiement ou avec l’API REST.

Dans les pipelines YAML, les phases de génération et de mise en production sont toutes incluses dans la définition de pipeline multistage.

Exécutions

Il s’agit d’une exécution d’un pipeline. Pendant l’exécution de la tâche, Azure Pipelines traite dans un premier temps le pipeline, puis envoie le déroulement à un ou plusieurs agents pour effectuer les tâches. L’exécution collecte les journaux d’activité lors de l’exécution des étapes et des résultats des tests en cours d’exécution. Pour plus d'informations, consultez Exécutions de pipelines.

Scénarios

Un script exécute la ligne de commande, PowerShell ou le code Bash en tant qu’étape dans votre pipeline. Vous pouvez écrire des scripts multiplateformes pour macOS, Linux et Windows. Contrairement à une tâche prépackagenée, un script est un code personnalisé spécifique à votre pipeline.

Étapes

Une étape est une limite logique dans un pipeline qui peut marquer la séparation des préoccupations, par exemple la génération, le test et la production. Chaque étape contient un ou plusieurs travaux. Plusieurs étapes d’un pipeline s’exécutent l’une après l’autre par défaut. Vous pouvez spécifier d’autres conditions pour le moment où une phase s’exécute.

La définition des étapes d’un pipeline est utile lorsque :

  • Des groupes distincts gèrent différentes parties du pipeline. Par exemple, si différents gestionnaires gèrent les travaux de test et de déploiement, il est judicieux d’avoir des phases de test et de production distinctes.
  • Un ensemble d’approbations est connecté à un travail spécifique ou à un ensemble de travaux. Vous pouvez placer ces travaux dans des phases distinctes pour approbation.
  • Le pipeline a des travaux qui doivent s’exécuter longtemps. Vous pouvez mettre ces tâches dans des étapes qui leur sont propres.

Étapes

Une étape est le plus petit bloc de construction d’un pipeline. Par défaut, les étapes s’exécutent l’une après l’autre dans un travail. Une étape peut être un script ou une tâche.

Tâches

Une tâche est un script prépackageé ou une procédure abstraite avec un ensemble d’entrées pour définir l’automatisation dans un pipeline. Pour connaître les tâches disponibles, consultez la référence des tâches Azure Pipelines. Pour plus d’informations sur la création de tâches personnalisées, consultez Ajouter une extension de tâche de pipelines personnalisée.

Déclencheurs

Un déclencheur est un événement qui provoque le déclenchement d’un pipeline. Vous pouvez déclencher un pipeline manuellement ou pour s'exécuter selon une planification définie. Vous pouvez également déclencher automatiquement l'exécution d'un pipeline lors d'un push vers un dépôt, à l’achèvement d’une autre compilation, ou dans d'autres conditions. Pour plus d’informations, consultez Spécifier des événements qui déclenchent des pipelines et des déclencheursde mise en production classiques.