You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins cleanWs插件未按规则保留文件问题排查

Jenkins cleanWs 配置问题分析与解决

你的问题出在对cleanWs插件的匹配逻辑理解有误,以及规则配置方式不当:

问题根源

  1. INCLUDE规则的误用:你配置的INCLUDE: "**/*"会匹配工作区内所有文件和目录,后续的EXCLUDE: "**/*.txt"仅能排除txt文件,但无法排除这些txt文件所在的目录。由于目录被INCLUDE规则选中且未被排除,cleanWs会删除这些目录,导致目录下的txt文件也被一并删除。
  2. 规则逻辑搞反:cleanWs的默认行为就是清理工作区内的所有文件,不需要额外配置INCLUDE来指定“所有文件”。添加INCLUDE规则后,反而会将清理范围限定为匹配该规则的对象,再用EXCLUDE剔除部分,这种方式容易忽略目录的处理,导致预期外的删除。

正确配置

要实现“删除所有文件但保留.txt文件”的效果,只需直接配置EXCLUDE规则,无需添加INCLUDE:

cleanWs(
    patterns: [
        [
            pattern: "**/*.txt",
            type: "EXCLUDE"
        ]
    ]
)

补充说明

如果你的场景需要更复杂的匹配(比如既要保留txt,又要保留特定目录),可以添加多个EXCLUDE规则:

cleanWs(
    patterns: [
        [
            pattern: "**/*.txt",
            type: "EXCLUDE"
        ],
        [
            pattern: "docs/**/*",
            type: "EXCLUDE"
        ]
    ]
)

内容的提问来源于stack exchange,提问作者Stefan Vallaster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 07:30:54