Azure DevOps Server 2022删除流水线后文件共享Artifacts未清理问题
问题分析:Azure DevOps Server 2022.1 删除流水线后文件共享Artifacts未清理
问题背景
我们使用本地部署的Azure DevOps Server 2022.1,通过Publish build artifacts v1任务将构建产物发布至文件共享。删除流水线时,尽管对话框标注“删除包含所有构建及关联artifacts”,但关联的artifacts仍留存于文件共享中占用空间,且存在以下特征:
- 自动保留(automatic retention)机制运行正常,常规场景下artifacts会按规则被移除;
- 手动删除单个流水线运行(移除所有retention leases后),artifacts会立即被删除;
- 先移除流水线运行的retention leases再删除流水线,artifacts未被移除;
- 等待多日后,artifacts仍未被清理。
核心原因及现状
- 产品功能缺陷:经反馈,微软官方已完成该问题的复现,确认这是Azure DevOps Server 2022.1的特定场景Bug——当流水线通过
Publish build artifacts v1发布产物至文件共享时,删除整条流水线的操作未触发关联artifacts的清理逻辑,即使提前移除所有retention leases也无法触发。 - 清理路径差异:删除单个流水线运行与删除整条流水线的artifacts清理逻辑属于不同路径,前者的逻辑可覆盖文件共享场景,而后者的逻辑未适配该场景。
临时解决方案
在官方修复发布前,可采用以下临时方案处理:
- 先手动删除流水线的所有运行记录(确保移除对应retention leases),再删除流水线,可正常触发artifacts清理;
- 若已删除流水线,可直接通过文件共享的文件系统手动清理残留的artifacts,或编写脚本批量清理对应路径下的目标文件。
内容的提问来源于stack exchange,提问作者ika
相关产品推荐
相关产品推荐

