【发布时间】:2017-08-28 18:59:47
【问题描述】:
我想知道是否可以从作业工作区中仅删除一个构建(包括工件)。
我尝试在构建历史中“删除构建”,但它所做的只是从构建历史表中删除构建引用。我知道我可以 ssh 到服务器并从命令行删除文件,但我正在寻找一种从 Jenkins Web 界面执行此操作的方法。
安装 Workspace Cleanup Plugin 后,我可以清除当前工作区,但我想将其他构建保留在工作区中。
【问题讨论】:
-
"Delete Build" 不仅仅是删除一个引用。您没有看到哪些文件被清理?
-
如果您已将 Jenkins 配置为归档构建的 artifacts,则 Jenkins 将在删除构建时删除这些工件,但 Jenkins 不会将工件存储在作业的工作区。您的工作负责管理工作区。听起来您需要配置 Jenkins 以存档适当的工件并停止使用作业的工作区进行存储。
-
@BMitch 在运行作业时,我的脚本会从网络位置下载一些位图并将它们保存在作业工作区 (JOB_NAME/ws/BUILD_NO/) 中。构建完成后,我想保留这些文件,因为其他团队可能需要它们进行进一步分析。稍后当我用完空间时,我需要删除一些构建,但不需要删除最旧的构建。当我从 Build History 表中删除它们时,位图仍然占用磁盘空间。
-
@DaveBacher 感谢您指出这一点。问题是工件存储在主节点上,而我在从节点上运行我的作业并且更喜欢将我的大部分文件保留在本地工作区中。