{"id":70399,"date":"2025-10-18T10:40:30","date_gmt":"2025-10-18T18:40:30","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/devops\/?p=70399"},"modified":"2026-03-17T00:24:48","modified_gmt":"2026-03-17T08:24:48","slug":"upcoming-updates-for-azure-pipelines-agents-images","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/upcoming-updates-for-azure-pipelines-agents-images\/","title":{"rendered":"Upcoming Updates for Azure Pipelines Agents Images"},"content":{"rendered":"<p>To ensure our hosted agents in Azure Pipelines are operating in the most secure and up-to-date environments, we continuously update the supported images and phase out older ones. In October 2024, we announced support for Ubuntu-24.04. Soon, we plan to update the ubuntu-latest image to map to Ubuntu-24.04. Additionally, MacOS 15 Sequoia and Windows 2025 images will be generally available later this year. Alongside these new releases, we will deprecate older images like Ubuntu-20.04 and Windows Server 2019. Please refer to the following subsections for detailed updates on individual images.<\/p>\n<h3>Ubuntu<\/h3>\n<h5>Ubuntu 24.04<\/h5>\n<details>\n<summary><strong>General Availability of Ubuntu 24.04<\/strong><\/summary>\n<p>The Ubuntu-24.04 Pipelines image is available since October last year. We plan to update the ubuntu-latest image to map to Ubuntu-24.04 soon. After this change all the jobs using ubuntu-latest image will run on ubuntu-24.04 instead of ubuntu-22.04. Please note that some tools are no longer available on the Ubuntu-24.04 image. <\/details>\n<\/p>\n<h5>Ubuntu 20.04<\/h5>\n<details>\n<summary><strong>Deprecation plan for Ubuntu-20.04<\/strong><\/summary>\n<p>We are deprecating support for the Ubuntu 20.04 image in Azure Pipelines because it will reach its end of support soon. Please find the deprecation plan for the same below.<\/details>\n<\/p>\n<h6>Key Dates:<\/h6>\n<p>\u2022 <strong>Deprecation Start Date:<\/strong> March 19, 2025<br \/>\n\u2022 <strong>Brownout period:<\/strong> 19th March 2025 to 28th March 2025<br \/>\n\u2022 <strong>Full Removal Date:<\/strong> April 30th, 2025<\/p>\n<h6>What This Means for You:<\/h6>\n<p>Starting from March 18, 2025, organization using the Ubuntu 20.04 image will begin to see a banner indicating the upcoming deprecation. To raise awareness about the upcoming deprecation we will temporarily fail the jobs (brownout) that are using Ubuntu 20.04 from March 19th 2025 to April 8th 2025. From April 30, 2025, the Ubuntu 20.04 image will be fully removed from our hosted agents, and any pipelines still using this image will fail to run.<\/p>\n<h6>Brownout schedule<\/h6>\n<p>19th March 2025: 21:00 &#8211; 5:00 UTC<br \/>\n21st March 2025: 5:00 &#8211; 13:00 UTC<br \/>\n25th March 2025: 13:00 &#8211; 21:00 UTC<br \/>\n26th March 2025: 21:00 &#8211; 5:00 UTC<br \/>\n28th March 2025: 5:00 &#8211; 13:00 UTC<br \/>\n1st April 2025: 13:00 &#8211; 21:00 UTC<br \/>\n8th April 2025: 13:00 &#8211; 21:00 UTC<\/p>\n<h6>Recommended Actions:<\/h6>\n<p>To avoid disruptions, we recommend updating your pipelines to use the Ubuntu 22.04 or 24.04 image as soon as possible. The updated Ubuntu images offer improved performance, security, and support for the latest tools and libraries.<\/p>\n<h6>How to find out the impacted pipelines<\/h6>\n<p>To find out the impacted pipelines that are using the deprecated images please run the script present <a href=\"https:\/\/github.com\/microsoft\/azure-pipelines-agent\/tree\/master\/tools\/FindPipelinesUsingRetiredImages\" target=\"_blank\">here<\/a>.<\/p>\n<p>You can also identify pipelines that are using a deprecated (e.g. ubuntu-20.04) image, by checking the following location: https:\/\/dev.azure.com\/{organization}\/{project}\/_settings\/agentqueues<\/p>\n<p>Select the &#8216;Azure Pipelines&#8217; pool, then, filter on the image name, refer the following snapshot.<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-300x138.png\" alt=\"Image FilterImageByVersion Blog\" width=\"750\" height=\"345\" class=\"alignnone size-medium wp-image-70445\" srcset=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-300x138.png 300w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-1024x471.png 1024w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-768x353.png 768w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-1536x706.png 1536w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/FilterImageByVersion_Blog-2048x942.png 2048w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/a><\/p>\n<h6>How to Update Your Pipelines:<\/h6>\n<p>1&#46; Open your pipeline YAML file.<br \/>\n2&#46; Locate the vmImage property.<br \/>\n3&#46; Change the value from ubuntu-20.04 to ubuntu-22.04 (ubuntu-24.04, ubuntu-latest).<br \/>\n4&#46; Save and run your pipeline to ensure it works with the new image.<\/p>\n<p>Example:<\/p>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'ubuntu-22.04'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'ubuntu-24.04'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'ubuntu-latest'\n<\/code><\/pre>\n<h6>Alternate methods to use Ubuntu 20.04 in Pipeline Jobs<\/h6>\n<p>Customers that are still dependent on Ubuntu 20.04 even when it reaches its end of support state, have the following options to Use Ubuntu 20.04 in a pipeline:<\/p>\n<p>Using a <a href=\"https:\/\/learn.microsoft.com\/azure\/devops\/pipelines\/process\/container-phases?view=azure-devops&amp;tabs=linux\">Container job<\/a> allow you to specify a container image independently of the hosted pipeline image. For example:<\/p>\n<pre><code class=\"yaml\">jobs:\n- job: ubuntu20\n  container: ubuntu:20.04\n  displayName: Use Ubuntu 20.04 container image\n  pool:\n    vmImage: 'ubuntu-latest'\n  steps:\n  - script: printenv\n<\/code><\/pre>\n<p>With <a href=\"https:\/\/devblogs.microsoft.com\/devops\/managed-devops-pools-ga\/\">Managed DevOps Pools<\/a>, you can create an agent pool using the <code>ubuntu-20.04<\/code> <a href=\"https:\/\/learn.microsoft.com\/azure\/devops\/managed-devops-pools\/configure-images?view=azure-devops&amp;tabs=azure-portal#azure-pipelines-images\">Azure Pipelines image<\/a> until <strong>June 30<\/strong>. You can also use <a href=\"https:\/\/learn.microsoft.com\/azure\/devops\/managed-devops-pools\/configure-images?view=azure-devops&amp;tabs=azure-portal#choose-your-pools-image\">images from the Azure Marketplace<\/a>.<\/p>\n<p>Lastly, you can create a <a href=\"https:\/\/learn.microsoft.com\/azure\/devops\/pipelines\/agents\/linux-agent?view=azure-devops\">Self-hosted agent<\/a> using any Operating System supported by the Pipelines Agent.<\/p>\n<h3>Windows<\/h3>\n<h5>Windows Server 2025<\/h5>\n<p>The Windows Server 2025 image will be generally available starting June 16, 2025. <strong>Please be aware that starting from September 2, 2025, the &#8220;windows-latest&#8221; label will refer to Windows 2025 instead of windows-2022. Customers using windows-latest will receive a warning in their jobs to notify them about this change.<\/strong><\/p>\n<h5>Windows Server 2019<\/h5>\n<p>As Windows Server 2025 generally available now, we will initiate the deprecation of the Windows Server 2019 as Microsoft Hosted Agent image in Azure Pipelines. We recommend that if you use Windows Server 2019 image in a Microsoft Hosted Agent, you switch to Windows Server 2022 or Windows Server 2025 image.<\/p>\n<blockquote>\n<p><strong>Important<\/strong><br \/>\n  Please note that support for Windows Server 2019 image for Microsoft hosted Agents has been extended till 31st December&#8217;2025. We will have additional brownout on <strong>2nd December&#8217;2025 and 9th December&#8217;2025<\/strong> to raise awareness about the upcoming retiral.<\/p>\n<\/blockquote>\n<h6>Who is impacted<\/h6>\n<p>This deprecation affects Azure DevOps Pipeline customers only if they are using Windows Server 2019 image in a Microsoft Hosted Agent. <strong>Please note that it does not impact customers using Windows 2019 in any other Agent (Self-hosted, MDP, VMSS).<\/strong> Refer the <a href=\"#how-to-find-out-the-impacted-pipelines\">guidelines given below<\/a> to find out the impacted pipelines in your organization. The detailed deprecation plan is outlined below.<\/p>\n<h6>Key Dates:<\/h6>\n<p>\u2022 <strong>Deprecation Start Date<\/strong>: 1st June 2025<br \/>\n\u2022 <strong>Brownout period:<\/strong> 3rd June 2025 to 24th June 2025, 2nd December 2025 to 9th December 2025<br \/>\n\u2022 <strong>Full Removal Date<\/strong>: <del datetime=\"2025-10-28T11:20:36+00:00\">30th June 2025<\/del> 31st December 2025<\/p>\n<h6>What This Means for You:<\/h6>\n<p>In the coming weeks, organizations will begin to see a banner indicating the upcoming deprecation of Windows Server 2019 hosted image. To further raise awareness, we will temporarily fail the jobs (brownout) that are using Windows Server 2019 images from 3rd June 2025 to 24th June 2025. <strong>From 1st January 2026 onwards<\/strong>, the Windows Server 2019 image will be fully removed from our hosted agents, and any pipeline jobs still using this image will fail to run. We recommend that our customers using Windows Server 2019 images in their pipeline jobs switch to Windows Server 2022 or Windows Server 2025 images.<\/p>\n<h6>Brownout schedule<\/h6>\n<p>\u2022 <strong>June 3<\/strong> 13:00-21:00 UTC<br \/>\n\u2022 <strong>June 10<\/strong> 13:00-21:00 UTC<br \/>\n\u2022 <strong>June 17<\/strong> 13:00-21:00 UTC<br \/>\n\u2022 <strong>June 24<\/strong> 13:00-21:00 UTC<br \/>\n\u2022 <strong>December 2<\/strong> 13:00-21:00 UTC<br \/>\n\u2022 <strong>December 9<\/strong> 13:00-21:00 UTC<\/p>\n<h6>How to find out the impacted pipelines<\/h6>\n<p>To find out the impacted pipelines that are using the deprecated images please run the script present <a href=\"https:\/\/github.com\/microsoft\/azure-pipelines-agent\/tree\/master\/tools\/FindPipelinesUsingRetiredImages\" target=\"_blank\">here<\/a>. You can also identify pipelines that are using a deprecated (e.g. Windows 2019) image, by checking the following location: https:\/\/dev.azure.com\/{organization}\/{project}\/_settings\/agentqueues<br \/>\nSelect the &#8216;Azure Pipelines&#8217; pool, then, filter on the image name, refer the following snapshot. <a href=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019.png\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019-300x130.png\" alt=\"Windows2019 image\" width=\"750\" height=\"325\" class=\"alignnone size-medium wp-image-71035\" srcset=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019-300x130.png 300w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019-1024x443.png 1024w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019-768x332.png 768w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019-1536x665.png 1536w, https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2025\/03\/Windows2019.png 2020w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/a><\/p>\n<h6>Recommended Actions:<\/h6>\n<p>To avoid disruptions, we recommend updating your impacted pipelines to use the Windows Server 2022 or Windows Server 2025 image as soon as possible.<\/p>\n<h6>How to Update Your Pipelines:<\/h6>\n<ol>\n<li>Open your pipeline YAML file.<\/li>\n<li>Locate the vmImage property.<\/li>\n<li>Change the value from windows-2019 to windows-2022 or windows-2025 or windows-latest. <\/li>\n<li>Save and run your pipeline to ensure it works with the new image.<\/li>\n<\/ol>\n<p>Example:<\/p>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'windows-2022'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'windows-2025'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'windows-latest'\n<\/code><\/pre>\n<h3>mac-OS<\/h3>\n<h5>mac-OS Sequoia<\/h5>\n<p>mac-OS 15 sequoia image is generally available now. Please note that &#8220;macOS-latest&#8221; will now point to macOS 15 instead of macOS 14.<\/p>\n<h5>mac-OS 13 Ventura<\/h5>\n<details>\n<summary>**macOS-13 hosted image is retired from Azure DevOps Pipelines from 8th December&#8217;2025. **<\/summary>\n<p> In accordance with our policy to support the n-1 version of OS images, we will initiate the deprecation of macOS 13 Ventura starting 1st September 2025, with plans to retire it by 4th December 2025. Customers currently utilizing macOS-13 in their pipelines are encouraged to transition to macOS-14 or macOS-15 images.<\/details>\n<\/p>\n<h6>Who is impacted<\/h6>\n<p>This deprecation affects Azure DevOps Pipeline customers only if they are using macOS 13 image in a Microsoft Hosted Agent. <strong>Please note that it does not impact customers using macOS13 images in any other Agent (Self-hosted, MDP, VMSS).<\/strong> Refer the <a href=\"#how-to-find-out-the-impacted-pipelines\">guidelines given below<\/a> to find out the impacted pipelines in your organization. The detailed deprecation plan is outlined below.<\/p>\n<h6>Key Dates:<\/h6>\n<p>\u2022 <strong>Deprecation Start Date<\/strong>: 1st September 2025<br \/>\n\u2022 <strong>Weekly Brownout Period<\/strong>: 4th Nov-25th Nov 2025<br \/>\n\u2022 <strong>Full Retiral Date<\/strong>: 4th December 2025<\/p>\n<h6>Brownout schedule<\/h6>\n<p>\u2022 <strong>November 4<\/strong>, 14:00 UTC to November 5, 00:00 UTC<br \/>\n\u2022 <strong>November 11<\/strong>, 14:00 UTC to November 12, 00:00 UTC<br \/>\n\u2022 <strong>November 18<\/strong>, 14:00 UTC to November 19, 00:00 UTC<br \/>\n\u2022 <strong>November 25<\/strong>, 14:00 UTC to November 26, 00:00 UTC<\/p>\n<h6>How to find out the impacted pipelines<\/h6>\n<p>To find out the impacted pipelines that are using the deprecated images please run the script present <a href=\"https:\/\/github.com\/microsoft\/azure-pipelines-agent\/tree\/master\/tools\/FindPipelinesUsingRetiredImages\" target=\"_blank\">here<\/a>. You can also identify pipelines that are using a deprecated (e.g. macOS-13) image, by checking the following location: https:\/\/dev.azure.com\/{organization}\/{project}\/_settings\/agentqueues<br \/>\nSelect the &#8216;Azure Pipelines&#8217; pool, then, filter on the image name i.e. macOS-13.<\/p>\n<h6>How to Update Your Pipelines:<\/h6>\n<ol>\n<li>Open your pipeline YAML file.<\/li>\n<li>Locate the vmImage property.<\/li>\n<li>Change the value from macOS-13 to macOS-14 or macOS-15 or macOS-latest. <\/li>\n<li>Save and run your pipeline to ensure it works with the new image.<\/li>\n<\/ol>\n<p>Example:<\/p>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'macOS-14'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'macOS-15'\n<\/code><\/pre>\n<pre><code class=\"yaml\">pool:  \n  vmImage: 'macOS-latest'\n<\/code><\/pre>\n<h5>Apple silicon (ARM64) support for mac-OS image<\/h5>\n<p>macOS-15 arm64 image preview has been paused. Please look out for this section for further updates on macOS ARM64 image availability<a href=\"https:\/\/learn.microsoft.com\/en-us\/azure\/devops\/pipelines\/agents\/hosted?view=azure-devops&#038;tabs=macos-images%2Cyaml#macos-15-arm64-image-limited-public-preview-paused\" target=\"_blank\">here.<\/a><\/p>\n<p>We understand that some of these changes may require some adjustments to your pipelines, and we are here to help. If you have any questions or need assistance, please reach out to our support team or visit our <a href=\"https:\/\/developercommunity.visualstudio.com\/AzureDevOps\" target=\"_blank\">community forums<\/a>.<br \/>\nThank you for your understanding and cooperation as we continue to improve the Azure Pipelines experience.\n<\/p>\n<p><!-- \/wp:post-content --><\/p>\n","protected":false},"excerpt":{"rendered":"<p>To ensure our hosted agents in Azure Pipelines are operating in the most secure and up-to-date environments, we continuously update the supported images and phase out older ones. In October 2024, we announced support for Ubuntu-24.04. Soon, we plan to update the ubuntu-latest image to map to Ubuntu-24.04. Additionally, MacOS 15 Sequoia and Windows 2025 [&hellip;]<\/p>\n","protected":false},"author":184574,"featured_media":45953,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[226,1],"tags":[],"class_list":["post-70399","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ci","category-devops"],"acf":[],"blog_post_summary":"<p>To ensure our hosted agents in Azure Pipelines are operating in the most secure and up-to-date environments, we continuously update the supported images and phase out older ones. In October 2024, we announced support for Ubuntu-24.04. Soon, we plan to update the ubuntu-latest image to map to Ubuntu-24.04. Additionally, MacOS 15 Sequoia and Windows 2025 [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/70399","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/users\/184574"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/comments?post=70399"}],"version-history":[{"count":2,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/70399\/revisions"}],"predecessor-version":[{"id":72562,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/70399\/revisions\/72562"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media\/45953"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media?parent=70399"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=70399"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=70399"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}