问题 如何在Hudson中删除不需要的构建工件


我有一个 哈德森CI 服务器正在构建一个maven构建。具有两个子项目的父项目。其中一个maven子项目创建了一个相当大的.war(10MB)文件,该文件存储在每个构建中。我想摆脱.war文件以节省磁盘空间,但我想将Hudson构建商店的所有其他内容存储在历史记录中(测试结果,图表等)。

.war文件存储在 jobs/PROJECT_NAME/modules/PACKAGE_NAME$SUB_PROJECT_NAME/builds/2009-12-23_11-59-11/archive/PACKAGE_NAME/SUB_PROJECT_NAME/1.0/SUB_PROJECT_NAME-1.0.war

我已经尝试过使用作业配置了 这个问题 亦即 存档工件 和 丢弃除最后一个成功/稳定工件之外的所有工件以节省磁盘空间。但这确实如下:

  1. 为最后两次构建存储一个附加副本 jobs/PROJECT_NAME/builds/2009-12-29_17-23-39/archive/PROJECT_NAME/web/target/PROJECT_NAME-web-1.0.war 。所以它实际上增加了磁盘空间消耗。
  2. 此hudson作业的网页包含最后两个版本中.war文件的链接。

我的构建只是执行 clean install 针对父母的目标 的pom.xml

那么如何配置Hudson服务器和/或Maven从下面自动删除构建工件 jobs/PROJECT_NAME/modules 让他们失望 jobs/PROJECT_NAME/builds


2971
2017-12-30 11:38


起源



答案:


我用 后期构建任务 做一些文件复制/删除的东西。


6
2018-01-05 08:10





我前一段时间遇到了这个问题,然后带着一个cronjob:

10 * * * *  find jobs/PROJECT_NAME/modules/ -name "*[tejw]ar" -type f -exec rm -f {} \;

每小时一次,它将从此目录(以及所有子目录)中删除所有tar,ear,war和jar文件。这可能有更多以哈德森为中心的方式......


5
2018-02-18 23:35





我带着类似的问题来到这里;我的问题已通过“删除旧版本”复选框解决。如果你不关心像OP那样保留旧的构建数据,那么这个复选框就是一个更简单的解决方案。


1



人们,记得在保存之后执行工作。 - Lucas


答案:


我用 后期构建任务 做一些文件复制/删除的东西。


6
2018-01-05 08:10





我前一段时间遇到了这个问题,然后带着一个cronjob:

10 * * * *  find jobs/PROJECT_NAME/modules/ -name "*[tejw]ar" -type f -exec rm -f {} \;

每小时一次,它将从此目录(以及所有子目录)中删除所有tar,ear,war和jar文件。这可能有更多以哈德森为中心的方式......


5
2018-02-18 23:35





我带着类似的问题来到这里;我的问题已通过“删除旧版本”复选框解决。如果你不关心像OP那样保留旧的构建数据,那么这个复选框就是一个更简单的解决方案。


1



人们,记得在保存之后执行工作。 - Lucas