You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Jenkins项目中删除特定文件夹?清空数据是否会破坏任务?

解决Jenkins单个文件夹删除的问题

嘿,先给你敲个警钟:**绝对不要清空Jenkins数据库!**你的担心完全不是多余的——Jenkins的核心数据(包括所有任务配置、构建历史、插件设置、工作区内容等)都存在$JENKINS_HOME目录下(这就是你说的“数据库”对应的实际存储),清空它等于把整个Jenkins环境直接重置,所有任务和配置都会丢失,完全没必要这么干。

下面针对你的需求,分两种场景给你具体方案:

场景1:删除某个任务工作区里的单个文件夹

如果是你的node e2e测试任务工作区内的特定文件夹(比如测试生成的报告、临时文件目录),有两种安全的方式:

  • 通过构建步骤自动删除:在任务的构建配置里,添加一个执行shell(Linux/macOS)或批处理(Windows)的步骤,执行删除命令:
    • Linux/macOS:rm -rf ${WORKSPACE}/your-target-folder
    • Windows:rd /s /q "%WORKSPACE%\your-target-folder"
      这个命令只会删除指定的目标文件夹,只要你不把node_modules写进去,就完全不会影响项目依赖。
  • 手动去服务器删除:找到Jenkins工作区的路径(默认是$JENKINS_HOME/workspace/你的任务名称/),在任务没有运行的前提下,直接删除目标文件夹即可。

场景2:删除Jenkins中由Folder插件创建的文件夹(包含多个任务的容器)

如果是你在Jenkins里用Folder插件创建的文件夹(用来组织多个任务的那种),操作也很简单:

  • 删除整个文件夹及内部任务:进入该文件夹的主页,点击右上角的「Delete Folder」(不同版本可能文字略有不同),确认后就会删除这个文件夹以及里面的所有任务、配置和工作区。
  • 仅清空文件夹下的所有工作区(保留任务配置):可以安装「Workspace Cleanup Plugin」插件,在文件夹配置里设置工作区清理规则,或者进入每个子任务单独清理工作区。

额外提醒

对于你的node e2e测试项目,依赖项都存在node_modules目录里,只要你操作时避开这个目录,就不会破坏依赖。如果还是担心误操作,建议先备份目标文件夹或者整个工作区,再执行删除操作。

内容的提问来源于stack exchange,提问作者Robert Newton

火山引擎 最新活动