Azure DevOps构建管道中DeleteFiles任务未按预期工作
解决DeleteFiles任务未删除指定文件的问题
可能的原因及修复步骤
- 检查任务执行顺序:确保DeleteFiles任务在生成发布工件的任务(如Publish Build Artifacts)之前执行。如果删文件的步骤在发布之后,根本不会影响最终的Artifact。
- 修正文件匹配路径:
- 针对Images文件夹,使用
**/Images/**匹配所有层级下的Images文件夹及内部所有内容,仅写**/Images可能只会匹配文件夹本身,无法删除内部文件,导致文件夹残留。 - 针对Devex*.dll文件,使用
**/bin/**/Devex*.dll确保覆盖所有嵌套层级的bin目录,避免因目录结构嵌套导致匹配失效。
- 针对Images文件夹,使用
- 确认工作目录:检查DeleteFiles任务的
Working Directory配置,确保任务在构建输出的根目录(如$(Build.ArtifactStagingDirectory))下执行,路径错误会导致匹配规则找不到目标文件。 - 核对日志信息:从DeleteFiles任务日志里查看是否有“0 files deleted”的提示,若有则说明路径匹配规则未命中,需调整通配符;若日志显示文件已删除但Artifact里仍存在,基本是任务顺序搞反了。
推荐的DeleteFiles配置
在任务的Source Folder中指定构建输出根目录(比如$(Build.ArtifactStagingDirectory)),然后在Contents中填写:
**/Images/** **/bin/**/Devex*.dll
内容的提问来源于stack exchange,提问作者Sai VV
相关产品推荐
相关产品推荐

