Specify events that trigger pipelines

Note

In Microsoft Team Foundation Server (TFS) 2018 and previous versions, build and release pipelines are called definitions, runs are called builds, service connections are called service endpoints, stages are called environments, and jobs are called phases.

Use triggers to run a pipeline automatically. Azure Pipelines supports many types of triggers. Based on your pipeline's type, select the appropriate trigger from the list below:

Classic build pipelines and YAML pipelines

Continuous integration (CI) triggers vary based on the type of repository you build in your pipeline.

Pull request validation (PR) triggers also vary based on the type of repository.

Gated check-in is supported for TFVC repositories.

Comment triggers are supported only for GitHub repositories.

Scheduled triggers are independent of the repository and allow you to run a pipeline according to a schedule.

Pipeline triggers in YAML pipelines and build completion triggers in classic build pipelines allow you to trigger one pipeline upon the completion of another.

Branch consideration for triggers in YAML pipelines

YAML pipelines can have different versions of the pipeline in different branches, which can affect which version of the pipeline's triggers are evaluated and which version of the pipeline should run.

Trigger type Pipeline YAML version
CI triggers (trigger) The version of the pipeline in the pushed branch is used.
PR triggers (pr) The version of the pipeline in the source branch for the pull request is used.
GitHub pull request comment triggers The version of the pipeline in the source branch for the pull request is used.
Scheduled triggers See Branch considerations for scheduled triggers.
Pipeline completion triggers See Branch considerations for pipeline completion triggers.
Azure Pipelines Action See Branch considerations.

Classic release pipelines

Continuous deployment triggers help you start classic releases after a classic build or YAML pipeline completes.

Scheduled release triggers allow you to run a release pipeline according to a schedule.

Pull request release triggers are used to deploy a pull request directly using classic releases.

Stage triggers in classic release are used to configure how each stage in a classic release is triggered.