Azure DevOps Agent Pools Goes Boink

In my previous post on automating CI Deployments for Node.js Azure Functions using YAML and Azure DevOps, you might have run into the dreaded “How to resolve ‘No hosted parallelism has been purchased or granted’ in free tier?” error.

From what I can gather, there is an egregious overuse of Azure DevOps jobs, and this capability has to be locked down.

This makes sense. Here is my configuration.

However, for certain public/private projects, this functionality is disabled (even when you have a license), and therefore, to use it, you need to submit a request, and eventually, you’ll have permission to run these jobs as hosted again. In my example, I only had 1 job running, so the parallel jobs required is 1?

The following article explains the issue rather nicely, along with providing a form that you can fill out to have this re-enabled in your org. There is no one to follow up with, and you should see a change in your environment in 2 – 3 business days. The complete article is here.

I sent in this form multiple times over the past 3 months and have heard nothing, so onto Plan B.

Self-Hosted Agents are Back!

Yes, to get my builds going, I set up an Azure VM and created a new self-hosted agent. To get this process started, create a base Windows VM, and select New Agent in the top-right corner as seen below.

From there, you will be prompted with the configuration scripts to run on your machine.

After a reboot there, some updating of parameters here, you will have your very own build agent back online that your builds can now start using.

The only odd thing I had happen throughout this process is that the old Cloud Hosted “Azure Pipelines” pool was still alive, and I had a hard time forcing my builds to avoid it, as everything kept defaulting to it. To get around this, I called my pool “Azure Pipelines” and then voila – we had builds running.

I still don’t know where my emails are, but I hold out hope that one day I’ll be able to run cloud builds again.

And yes, don’t forget to turn that VM off.