Troubleshoot pipeline triggers

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

If a pipeline doesn't start at all, check the following common trigger related issues.

Note

An additional reason that runs may not start is that your organization goes dormant five minutes after the last user signs out of Azure DevOps. After that, each of your build pipelines will run one more time. For example, while your organization is dormant:

  • A nightly build of code in your organization will run only one night until someone signs in again.
  • CI builds of an Other Git repo will stop running until someone signs in again.

UI settings override YAML trigger setting

YAML pipelines can have their trigger and pr trigger settings overridden in the pipeline settings UI. If your trigger or pr triggers don't seem to be firing, check that setting. While editing your pipeline, choose ... and then Triggers.

Pipeline settings UI

Check the Override the YAML trigger from here setting for the types of trigger (Continuous integration or Pull request validation) available for your repo.

Override YAML trigger from here.

Pull request triggers not supported with Azure Repos

If your pr trigger isn't firing, and you are using Azure Repos, it is because pr triggers aren't supported for Azure Repos. In Azure Repos Git, branch policies are used to implement pull request build validation. For more information, see Branch policy for pull request validation.

Disable implied YAML CI trigger setting is enabled

Note

This feature is available starting in Azure DevOps Server 2022.2.

YAML pipelines are configured by default with a CI trigger on all branches, unless the Disable implied YAML CI trigger setting, introduced in Azure DevOps sprint 227, is enabled. The Disable implied YAML CI trigger setting can be configured at the organization level or at the project level, and by default, the setting is not enabled.

If your pipelines use the default implicit CI trigger, and they stop working, check this setting. When the Disable implied YAML CI trigger setting is enabled, CI triggers for YAML pipelines are not enabled if the YAML pipeline doesn't have a trigger section.

Branch filters misconfigured in CI and PR triggers

When you define a YAML PR or CI trigger, you can specify both include and exclude clauses for branches and paths. Ensure that the include clause matches the details of your commit and that the exclude clause doesn't exclude them.

Important

When you define a YAML PR or CI trigger, only branches explicitly configured to be included will trigger a run. Includes are processed first, and then excludes are removed from the list. If you specify an exclude but don't specify any includes, nothing will trigger. For more information, see pr and trigger.

When you define a YAML PR or CI trigger, you can specify both include and exclude clauses for branches, tags, and paths. Ensure that the include clause matches the details of your commit and that the exclude clause doesn't exclude them. For more information, see pr and trigger.

Note

If you specify an exclude clause without an include clause, it is equivalent to specifying * in the include clause.

Scheduled trigger time zone conversions

YAML scheduled triggers are set using UTC time zone. If your scheduled triggers don't seem to be firing at the right time, confirm the conversions between UTC and your local time zone, taking into account the day setting as well. For more information, see Scheduled triggers.

UI settings override YAML scheduled triggers

If your YAML pipeline has both YAML scheduled triggers and UI defined scheduled triggers, only the UI defined scheduled triggers are run. To run the YAML defined scheduled triggers in your YAML pipeline, you must remove the scheduled triggers defined in the pipeline settings UI.

To access the pipeline settings UI from a YAML pipeline, edit your pipeline, choose ... and then Triggers.

Pipeline settings UI

Remove all scheduled triggers.

Delete scheduled triggers in the Pipeline settings UI.

Once all UI scheduled triggers are removed, a push must be made in order for the YAML scheduled triggers to start running. For more information, see Scheduled triggers.

I need more help. I found a bug. I've got a suggestion. Where do I go?

Get subscription, billing, and technical support

Report any problems or submit feedback at Developer Community.

We welcome your suggestions: