Setting build priority in yaml or UI

Viewed 1548

Is there a way to setup up a build's priority in a yaml based pipeline? There seem to be references to build priority in the Azure DevOps API, but nothing in how to do this via yaml. I thought there might be some docs in the Triggers section, but no.

We need this because we have some fast building NuGet packages, but these get starved via slow-build pipelines making turnaround time for packages painful.

The closest thing I could come up with to working around this is via agent demands in the yaml

demands:
  - Agent.ComputerName = XYZ

to separate build pipelines, but this is a bit of a hack and doesn't use agents efficiently.

A way to set this in UI would be acceptable, but I couldn't seem to find anything.

2 Answers

Recently Azure DevOps introduced the ability to manually specify a build/release runs next.

This manifests as a Run next button. (image source).

enter image description here

So while you can't say "this pipeline always takes priority" yet, you can manually force a specific run to the front of the queue.

If you need a specific pipeline to always take priority, then you likely want to setup a separate agent pool just for those pipelines, or use demands as Leo Liu mentioned.

Setting build priority in yaml or UI

I'm afraid this feature is not yet supported in Azure DevOps at this moment.

There is a popular user voice about it, you can upvote it and check the feedback from that ticket.

Currently as a workaround, just like what you did, set the demands in build definitions to force building with the specific agents.

Hope this helps.

Related