【问题标题】:Manage groups of build configurations in Hudson在 Hudson 中管理构建配置组
【发布时间】:2011-01-29 19:09:52
【问题描述】:

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

  • 在每次 SVN 更改后运行的连续构建
  • 夜间构建
  • 夜间站点生成(我在后台使用 Maven)
  • 以及一些分支机构的每周集成构建

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

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

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

【问题讨论】:

  • 我也希望能够做到这一点。我查看了 wiki 和插件,我认为答案是“不”。我希望我错了……

标签: java maven-2 hudson


【解决方案1】:

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

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

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

【讨论】:

  • 是的。我也是这么想的。 1. 合并执行相同操作的构建(例如连续构建和夜间构建)。 2,自动创建新版本。
猜你喜欢
  • 2011-06-04
  • 1970-01-01
  • 1970-01-01
  • 2012-01-13
  • 1970-01-01
  • 2016-02-26
  • 2012-08-07
  • 2011-07-21
  • 2011-07-12
相关资源
最近更新 更多