Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Un déclencheur de pipeline détermine quand un pipeline doit être exécuté. Vous pouvez configurer un déclencheur pour exécuter un pipeline selon une planification ou en réponse à un événement, tel que la création d’une pull request. Azure Pipelines prend en charge les types de déclencheurs suivants :
- Les déclencheurs d’intégration continue (déclencheurs CI) exécutent un pipeline lorsque vous envoyez du code à une branche.
- Les déclencheurs de pull request (déclencheurs de PR) exécutent un pipeline lorsque vous créez une PR ou envoyez du code vers la branche source d’une PR ouverte. Les dépôts GitHub prennent en charge des déclencheurs basés sur des commentaires qui exécutent un pipeline lorsque vous ajoutez un commentaire à une pull request ouverte.
- Les déclencheurs planifiés exécutent un pipeline selon une planification prédéfinie.
- Les déclencheurs de fin de pipeline lancent un pipeline lorsqu’un autre pipeline se termine.
Cet article fournit une vue d’ensemble des déclencheurs de pipeline YAML et des déclencheurs de pipeline de build classiques . Les pipelines de mise en production classiques ont des versions similaires des déclencheurs décrits dans la liste précédente. Pour plus d’informations, consultez déclencheurs du pipeline de mise en production classique.
Déclencheurs CI
Les déclencheurs CI exécutent un pipeline lorsqu’un push est effectué vers une branche qui répond aux critères définis par le déclencheur. Utilisez le trigger mot clé pour configurer un déclencheur CI. Par exemple, pour exécuter un pipeline lorsqu’un envoi est effectué vers la branche main, spécifiez le déclencheur suivant.
trigger:
- main
Si vous ne configurez pas explicitement votre pipeline, toutes les branches ont des déclencheurs CI activés par défaut, à moins que Désactiver le déclencheur CI implicite ne soit défini ou que les paramètres de l’interface utilisateur remplacent le déclencheur YAML.
Si vous ne configurez pas explicitement votre pipeline, toutes les branches ont des déclencheurs CI activés par défaut, sauf si Désactiver le déclencheur CI implicite est activé ou si les paramètres de l’interface utilisateur remplacent le déclencheur YAML.
Remarque
Désactiver le déclencheur CI implicite n’est disponible que dans Azure DevOps Server 2022.2 et versions ultérieures. Dans Azure DevOps Server 2022 et 2022.1, les déclencheurs CI sont activés par défaut s’ils ne sont pas configurés explicitement.
Pour désactiver les déclencheurs CI dans votre pipeline, utilisez la syntaxe suivante.
trigger: none
Les pipelines YAML prennent en charge les déclencheurs CI pour les types de référentiels suivants. Pour plus d’informations sur l’utilisation de déclencheurs CI avec un type de référentiel spécifique, consultez les articles suivants.
- Déclencheurs CI dans Azure Repos Git
- Déclencheurs CI dans GitHub
- Déclencheurs CI dans GitHub Enterprise Server
- Déclencheurs CI dans Bitbucket Cloud
Pour plus d’informations sur la syntaxe de déclencheur YAML complète et les options disponibles pour les déclencheurs CI, consultez la définition du déclencheur.
Important
Dans Git, les chemins sont sensibles à la casse, y compris les filtres de chemin des déclencheurs CI et PR.
Déclencheurs de PR
Les déclencheurs de requête de tirage (PR) provoquent l’exécution d’un pipeline chaque fois que vous ouvrez une requête de tirage ou que vous envoyez des changements à la branche source d’une requête de tirage. Utilisez le mot-clé pr pour configurer un déclencheur de PR. Par exemple, pour exécuter un pipeline lorsqu’une pull request est créée sur la branche main, configurez le déclencheur suivant.
pr:
- main
Si vous ne configurez pas explicitement les déclencheurs de PR pour votre pipeline, ils sont activés par défaut, sauf si les paramètres de l’interface utilisateur remplacent le déclencheur YAML. Les pull requests sur n’importe quelle branche déclenchent l’exécution d’un pipeline. Pour désactiver les déclencheurs de PR dans votre pipeline, utilisez la syntaxe suivante.
pr: none
Les déclencheurs YAML PR sont pris en charge pour GitHub et Bitbucket Cloud. Pour plus d’informations sur l’utilisation des déclencheurs de PR avec ces types de référentiels, consultez Déclencheurs de PR sur GitHub et Déclencheurs de PR sur Bitbucket Cloud. Pour plus d’informations sur la syntaxe de déclencheur YAML PR complète, consultez la définition de pr.
Azure Repos Git utilise des stratégies de branche pour mettre en œuvre des déclencheurs de PR. Pour plus d’informations, consultez les déclencheurs PR dans Azure Repos Git.
Déclencheurs de commentaire
Les déclencheurs de commentaire configurent l’exécution d’un pipeline lorsque des contributeurs publient un commentaire sur une pull request contenant une commande de pull request comme /azp run. Les déclencheurs de commentaire sont pris en charge uniquement pour les référentiels GitHub. Pour plus d’informations, consultez les déclencheurs de commentaires de dépôt GitHub.
Déclencheurs planifiés
Les déclencheurs planifiés exécutent un pipeline selon une planification prédéfinie. Tous les types de référentiels qui prennent en charge les pipelines YAML prennent en charge les déclencheurs planifiés dans les pipelines YAML. Ces types de référentiels incluent Azure Repos Git, GitHub, GitHub Enterprise Server et Bitbucket Cloud.
Pour définir un déclencheur planifié dans YAML, utilisez le mot clé et définissez votre planification à l’aide de la schedules syntaxe cron. L’exemple suivant configure une planification qui s’exécute tous les jours à minuit.
# YAML file in the main branch
schedules:
- cron: '0 0 * * *'
displayName: Daily midnight build
branches:
include:
- main
Pour plus d’informations et d’exemples, consultez les déclencheurs planifiés, la définition des planifications et la définition schedules.cron.
Déclencheurs d’achèvement de pipeline
Les déclencheurs de pipeline dans des pipelines YAML et les déclencheurs basés sur l’achèvement de build dans des pipelines de build classiques vous permettent de déclencher un pipeline à l’achèvement d’un autre pipeline.
Configurez un déclencheur de ressource de pipeline dans votre pipeline pour démarrer une exécution de pipeline lorsque le pipeline source termine une exécution.
resources:
pipelines:
- pipeline: sourcePipelineResource # Label for this pipeline resource; used when referring to it elsewhere in the pipeline.
source: source-pipeline # The name of the pipeline referenced by this pipeline resource.
project: FabrikamProject # Required only if the source pipeline is in another project
trigger: true # Run this pipeline when any run of source-pipeline completes
Vous pouvez ajouter plusieurs ressources de pipeline dans votre pipeline. Vous pouvez configurer le déclencheur pour qu’il s’exécute quand une version du pipeline source se termine, ou la limiter à certaines branches.
Pour plus d’informations et d’exemples, consultez les déclencheurs d’achèvement de pipeline.
Pour obtenir la syntaxe complète et les options de déclencheur, consultez la définition resources.pipelines.pipeline.
Prise en compte des branches pour les déclencheurs dans les pipelines YAML
Les pipelines YAML peuvent avoir différentes versions du pipeline dans différentes branches, ce qui peut affecter la version des déclencheurs du pipeline qui est évaluée ainsi que la version du pipeline qui doit s’exécuter.
| Type de déclencheur | Version du pipeline en YAML |
|---|---|
Déclencheurs CI (trigger) |
La version du pipeline de la branche poussée est utilisée. |
Déclencheurs de PR (pr) |
La version du pipeline de la branche source de la pull request est utilisée. |
| Déclencheurs de commentaires de pull request GitHub | La version du pipeline de la branche source de la pull request est utilisée. |
| Déclencheurs planifiés | Consultez Considérations relatives aux branches pour les déclencheurs planifiés. |
| Déclencheurs d’achèvement de pipeline | Consultez Considérations relatives aux branches pour les déclencheurs d’achèvement de pipeline. |
Pipelines de mise en production classique
Les déclencheurs de déploiement continu vous permettent de démarrer des mises en production classiques à l’achèvement d’un pipeline de build classique ou d’un pipeline YAML.
Les déclencheurs de mise en production planifiée vous permettent d’exécuter un pipeline de mise en production selon une planification.
Les déclencheurs de publication des pull requests sont utilisés pour déployer directement à partir d’une pull request avec des versions classiques.
Les déclencheurs de phase dans une mise en production classique sont utilisés pour configurer la façon dont chaque phase d’une mise en production classique est déclenchée.