如何在构建之前删除Hudson工作区?

11

我希望有一种方法来教 Hudson 在进行代码检出和构建之前删除完整的工作区。是否有插件可以实现这一功能?

6个回答

7

目前,每个SCM插件都提供工作空间清理功能。不久之后,核心Hudson将具备此功能,并且SCM插件将迁移该设置到该核心功能中: 问题3966


7
在源代码管理中,展开高级属性并取消勾选“使用更新”(此选项对于CVS而言是存在的,其他SCM工具则不确定)。该选项控制Hudson是否使用“更新”命令从SCM获取更改的文件,或者它是否从源代码控制中签出一个新的/干净的副本。

这适用于所有的软件配置管理工具。 - pugmarx
此外,还需要执行“clean”(例如:“maven clean”)以删除以前的构建产物(在maven中为target文件夹)。 - Andreas Dolk
这个命令是否真的会删除整个工作空间?Maven clean 不够,我也想删除本地存储库。 - Mauli
你的意思是想要删除本地的Maven仓库吗?如果是的话,我认为这超出了Hudson为您执行的范围。 - matt b
我配置了一个私有的Maven仓库,只被这个任务使用,因此它实际上位于工作区内。 - Mauli

3

在“高级项目选项”下有一个选项:在构建之前清理工作区。

它正好符合您的要求。


2

取消SCM选项下的使用更新并且在命令中调用Maven的清理阶段。


1

我还没有使用过它们,但据我所知,有一些Hudson插件可用,允许批处理脚本作为预构建和后构建步骤运行,这可以删除目录。 请查看:管理Hudson -> 管理插件 -> 可用


0
Hudson的Subversion插件现在有一个“模拟检出”的开关——它会在还原和更新之前删除未版本化的文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接