在Hudson中管理构建配置组

时间:2010-03-20 13:02:53

标签: java maven-2 hudson

我正在使用Hudson来构建我的应用程序。我有几个分支来来去去。每当有新的分支时,我必须为它设置以下构建:

  • 在SVN每次更改后运行的连续构建
  • 每晚构建
  • 夜间网站一代(我在引擎盖下使用Maven)
  • 和一些分支机构的每周集成构建

目前这意味着我需要复制四个模板配置并使用分支URL进行设置。我不喜欢这个有两个原因:

  • 这是多余的,因此修改某些内容很容易出错,需要花费很多时间。
  • 我需要在每个构建从站上对每个分支进行四次完整的产品检查,以及四个独立的私有Maven存储库,更不用说构建的工件了。这浪费了很多空间。

我想要的是为所有这些构建提供一个工作区和一个配置。哈德森可以这样吗?

1 个答案:

答案 0 :(得分:1)

如果您假设您的夜间构建与您的连续构建相同。您可以将持续构建工件发布到包含日期的文件夹/存储库路径中。因此,您的第二天和后续版本将覆盖当天的先前版本。

由于您需要条件构建步骤,因此网站生成和每周集成构建更加困难。 (我们的想法是运行批处理/ shell脚本,以确定是否需要采取行动(如网站构建)并将其作为该脚本的一部分运行。)

在我看来,更好的解决方案是编写批处理/ shell脚本(或Java程序也可以),复制模板并替换所有新作业中的svn条目。比创建新分支有两个步骤。首先以SVN路径作为参数运行脚本,然后告诉Hudson重新加载配置。该解决方案的优点在于,您可以在必要时更改模板,而无需更改脚本。