Getting ready for the next Azure DevOps pipeline agent update


Context

Maybe you have noticed the following warning message related to a brownout that will take place on December, 15, starting from the next week for 1h30 min in Azure DevOps while using hosted azure pipelines agent.

A brownout will take place on December, 15 3:00 PM - 4:30 PM UTC to raise awareness of the upcoming windows-2016 environment removal

here is how to handle it.


What is Azure DevOps agent job in your pipeline?

The release pipeline can be organized into multiple jobs, when each job represent a logical grouping of tasks that defines the runtime target on which the tasks will execute.

A series of steps that run sequentially as one single unit, it’s represent the smallest unit of work that can be scheduled to run.


Agent Specification

Agent job in a release pipeline

For each pipeline we have the possibility to use different types of agents.

According to Microsoft each agent present specific characteristics related to the following items :

Azure pipeline hosted agent
  • Microsoft-hosted agents

It is provided as pre-defined agent pool named Azure Pipelines with Microsoft-hosted agents

  1. The easy way to run your jobs
  2. Maintenance and upgrades are taken care of for you
  3. Each time you run a pipeline, you get a fresh virtual machine for each job in the pipeline
  4. The VM is discarded after one job

  • Self-hosted agents

An agent that you set up and manage on your own to run jobs

  1. More control to install dependent software needed for your builds and deployments
  2. Self hosted agents can be used Azure Pipelines or Team Foundation Server (TFS)
  • Several VM images

When using the hosted agents, the azure pipelines agent pool offers several virtual machines images to choose from, each including a broad range of tools and software

Azure pipelines VM images list

Windows-2016 environment will be removed on March 15 warning message

As previously communicated by Microsoft, there will be an upcoming changes related to the deprecation of Windows-2016 environment, so if you have pipelines that use vs2017-win2016, you will be impacted.

The cause

As Windows 2016 will no longer be supported in January 2022, the removal process of vs2017-win2016 images has been started from November 15, by alerting hosted runners via multiple warning messages and brownout periods until March 2022, (as mentioned by Microsoft & Github teams)

Windows 2016 Mainstream End Date

Identify impacted pipelines

As this action change may impact different pipelines, here is a way to identify the impacted releases that uses vs2017-win2016 VM image.

from Azure DevOps Project settings > Pipelines > Agent pools > Azure pipelines , you can filter on « vs2017-win 2016 »

Ready to update?

It is recommended to identify and then change your potential impacted pipelines that use jobs runs on Windows-2016 to Windows-latest, to ensure always using the latest version of Windows Server on your Azure pipelines

References

Laisser un commentaire