Azure Pipelines 代理镜像即将迎来重要更新:操作系统版本更迭与迁移指南

本文详细介绍了Azure Pipelines托管代理镜像的更新计划,包括Ubuntu 24.04的启用、Ubuntu 20.04和Windows Server 2019等旧版镜像的弃用时间表,并提供了具体的YAML配置迁移步骤和故障排查指南。

Azure Pipelines 代理镜像即将到来的更新

为确保 Azure Pipelines 中的托管代理运行在最安全、最新的环境中,我们会持续更新支持的镜像并逐步淘汰旧版本。在 2024 年 10 月,我们宣布支持 Ubuntu-24.04。不久后,我们计划将 ubuntu-latest 镜像映射到 Ubuntu-24.04。此外,macOS 15 Sequoia 和 Windows 2025 镜像也将在今年晚些时候正式推出。随着这些新版本的发布,我们将弃用 Ubuntu-20.04 和 Windows Server 2019 等旧镜像。请参考以下各小节了解单个镜像的详细更新信息。

Ubuntu

Ubuntu 24.04

Ubuntu 24.04 的正式发布

Ubuntu-24.04 Pipelines 镜像自去年十月起已可用。我们计划很快将 ubuntu-latest 镜像更新为映射到 Ubuntu-24.04。此更改后,所有使用 ubuntu-latest 镜像的作业都将在 ubuntu-24.04 上运行,而不是 ubuntu-22.04。请注意,Ubuntu-24.04 镜像上不再提供某些工具。

Ubuntu 20.04

Ubuntu-20.04 的弃用计划

我们正在弃用 Azure Pipelines 中对 Ubuntu 20.04 镜像的支持,因为它即将达到其支持终止日期。请参阅下面的弃用计划。

关键日期:

  • 弃用开始日期:2025年3月19日
  • 暂歇期:2025年3月19日至2025年3月28日
  • 完全移除日期:2025年4月30日

这对您意味着什么: 从 2025 年 3 月 18 日起,使用 Ubuntu 20.04 镜像的组织将开始看到一条提示即将弃用的横幅。为了提高对即将弃用的认知,我们将从 2025 年 3 月 19 日至 2025 年 4 月 8 日暂时使使用 Ubuntu 20.04 的作业失败(暂歇)。从 2025 年 4 月 30 日起,Ubuntu 20.04 镜像将从我们的托管代理中完全移除,任何仍在使用此镜像的流水线都将无法运行。

暂歇时间表:

  • 2025年3月19日:21:00 – 5:00 UTC
  • 2025年3月21日:5:00 – 13:00 UTC
  • 2025年3月25日:13:00 – 21:00 UTC
  • 2025年3月26日:21:00 – 5:00 UTC
  • 2025年3月28日:5:00 – 13:00 UTC
  • 2025年4月1日:13:00 – 21:00 UTC
  • 2025年4月8日:13:00 – 21:00 UTC

推荐操作: 为避免中断,我们建议您尽快将流水线更新为使用 Ubuntu 22.04 或 24.04 镜像。更新后的 Ubuntu 镜像提供了改进的性能、安全性以及对最新工具和库的支持。

如何查找受影响的流水线: 要查找正在使用已弃用镜像的受影响流水线,请运行此处提供的脚本。 您也可以通过检查以下位置来识别正在使用已弃用镜像(例如 ubuntu-20.04)的流水线:https://dev.azure.com/{organization}/{project}/_settings/agentqueues 选择“Azure Pipelines”池,然后按镜像名称筛选,请参考以下截图。

如何更新您的流水线:

  1. 打开您的流水线 YAML 文件。
  2. 找到 vmImage 属性。
  3. 将值从 ubuntu-20.04 更改为 ubuntu-22.04(或 ubuntu-24.04ubuntu-latest)。
  4. 保存并运行您的流水线以确保其在新镜像上正常工作。

示例:

1
2
pool:
  vmImage: 'ubuntu-22.04'
1
2
pool:
  vmImage: 'ubuntu-24.04'
1
2
pool:
  vmImage: 'ubuntu-latest'

在流水线作业中使用 Ubuntu 20.04 的替代方法: 即使在 Ubuntu 20.04 达到其支持终止状态后仍依赖它的客户,可以通过以下选项在流水线中使用 Ubuntu 20.04:

使用容器作业允许您独立于托管流水线镜像指定容器镜像。例如:

1
2
3
4
5
6
7
8
jobs:
- job: ubuntu20
  container: ubuntu:20.04
  displayName: Use Ubuntu 20.04 container image
  pool:
    vmImage: 'ubuntu-latest'
  steps:
  - script: printenv

通过托管 DevOps 池,您可以在 6 月 30 日之前使用 ubuntu-20.04 Azure Pipelines 镜像创建代理池。您也可以使用 Azure Marketplace 中的镜像。 最后,您可以使用流水线代理支持的任何操作系统创建自托管代理。

Windows

Windows Server 2025

Windows Server 2025 镜像将从 2025 年 6 月 16 日起正式推出。请注意,从 2025 年 9 月 2 日起,“windows-latest” 标签将指向 Windows 2025 而非 windows-2022。使用 windows-latest 的客户将在其作业中收到通知此更改的警告。

Windows Server 2019

随着 Windows Server 2025 现已正式推出,我们将启动弃用 Azure Pipelines 中作为微软托管代理镜像的 Windows Server 2019。如果您在微软托管代理中使用 Windows Server 2019 镜像,我们建议您切换到 Windows Server 2022 或 Windows Server 2025 镜像。

重要提示 请注意,微软托管代理对 Windows Server 2019 镜像的支持已延长至 2025 年 12 月 31 日。我们将在 2025 年 12 月 2 日和 2025 年 12 月 9 日进行额外的暂歇,以提高对即将停用的认知。

受影响对象: 此弃用仅影响在微软托管代理中使用 Windows Server 2019 镜像的 Azure DevOps Pipeline 客户。请注意,它不影响在其他任何代理(自托管、MDP、VMSS)中使用 Windows 2019 的客户。请参考下面给出的指南来查找您组织中受影响的流水线。详细的弃用计划概述如下。

关键日期:

  • 弃用开始日期:2025年6月1日
  • 暂歇期:2025年6月3日至2025年6月24日,2025年12月2日至2025年12月9日
  • 完全移除日期:2025年6月30日 / 2025年12月31日

这对您意味着什么: 在接下来的几周内,组织将开始看到一条提示即将弃用 Windows Server 2019 托管镜像的横幅。为了进一步提高认知,我们将从 2025 年 6 月 3 日至 2025 年 6 月 24 日暂时使使用 Windows Server 2019 镜像的作业失败(暂歇)。从 2026 年 1 月 1 日起,Windows Server 2019 镜像将从我们的托管代理中完全移除,任何仍在使用此镜像的流水线作业都将无法运行。我们建议在流水线作业中使用 Windows Server 2019 镜像的客户切换到 Windows Server 2022 或 Windows Server 2025 镜像。

暂歇时间表:

  • 6月3日 13:00-21:00 UTC
  • 6月10日 13:00-21:00 UTC
  • 6月17日 13:00-21:00 UTC
  • 6月24日 13:00-21:00 UTC
  • 12月2日 13:00-21:00 UTC
  • 12月9日 13:00-21:00 UTC

如何查找受影响的流水线: 要查找正在使用已弃用镜像的受影响流水线,请运行此处提供的脚本。您也可以通过检查以下位置来识别正在使用已弃用镜像(例如 Windows 2019)的流水线:https://dev.azure.com/{organization}/{project}/_settings/agentqueues 选择“Azure Pipelines”池,然后按镜像名称筛选,请参考以下截图。

推荐操作: 为避免中断,我们建议您尽快将受影响的流水线更新为使用 Windows Server 2022 或 Windows Server 2025 镜像。

如何更新您的流水线:

  1. 打开您的流水线 YAML 文件。
  2. 找到 vmImage 属性。
  3. 将值从 windows-2019 更改为 windows-2022windows-2025windows-latest
  4. 保存并运行您的流水线以确保其在新镜像上正常工作。

示例:

1
2
pool:
  vmImage: 'windows-2022'
1
2
pool:
  vmImage: 'windows-2025'
1
2
pool:
  vmImage: 'windows-latest'

macOS

macOS Sequoia

macOS 15 Sequoia 镜像现已正式推出。请注意,“macOS-latest” 现在将指向 macOS 15 而不是 macOS 14。

macOS 13 Ventura

根据我们支持操作系统镜像 n-1 版本的政策,我们将从 2025 年 9 月 1 日开始启动弃用 macOS 13 Ventura,计划在 2025 年 12 月 4 日之前将其停用。我们鼓励当前在流水线中使用 macOS-13 的客户迁移到 macOS-14macOS-15 镜像。

受影响对象: 此弃用仅影响在微软托管代理中使用 macOS 13 镜像的 Azure DevOps Pipeline 客户。请注意,它不影响在其他任何代理(自托管、MDP、VMSS)中使用 macOS13 镜像的客户。请参考下面给出的指南来查找您组织中受影响的流水线。详细的弃用计划概述如下。

关键日期:

  • 弃用开始日期:2025年9月1日
  • 每周暂歇期:2025年11月4日 - 11月25日
  • 完全停用日期:2025年12月4日

暂歇时间表:

  • 11月4日,14:00 UTC 至 11月5日,00:00 UTC
  • 11月11日,14:00 UTC 至 11月12日,00:00 UTC
  • 11月18日,14:00 UTC 至 11月19日,00:00 UTC
  • 11月25日,14:00 UTC 至 11月26日,00:00 UTC

如何查找受影响的流水线: 要查找正在使用已弃用镜像的受影响流水线,请运行此处提供的脚本。您也可以通过检查以下位置来识别正在使用已弃用镜像(例如 macOS-13)的流水线:https://dev.azure.com/{organization}/{project}/_settings/agentqueues 选择“Azure Pipelines”池,然后按镜像名称(即 macOS-13)筛选。

如何更新您的流水线:

  1. 打开您的流水线 YAML 文件。
  2. 找到 vmImage 属性。
  3. 将值从 macOS-13 更改为 macOS-14macOS-15macOS-latest
  4. 保存并运行您的流水线以确保其在新镜像上正常工作。

示例:

1
2
pool:
  vmImage: 'macOS-14'
1
2
pool:
  vmImage: 'macOS-15'
1
2
pool:
  vmImage: 'macOS-latest'

macOS 镜像的 Apple silicon (ARM64) 支持

我们理解大家对 macOS 镜像中 Apple Silicon (ARM64) 支持抱有极大的期待。我们很高兴地通知您,我们目前正在进行一次私人预览。感谢大家对私人预览的热烈响应以及分享您使用该镜像的体验反馈。在我们接近公开预览发布之际,我们正在关闭私人预览的新注册。

我们理解其中一些更改可能需要您对流水线进行一些调整,我们随时为您提供帮助。如果您有任何疑问或需要协助,请联系我们的支持团队或访问我们的社区论坛。

感谢您的理解和合作,我们将继续改进 Azure Pipelines 体验。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计