【发布时间】:2010-09-30 06:31:52
【问题描述】:
有没有人尝试过该功能并有一些反馈?或者有谁知道一些有用的样本可以查找?
【问题讨论】:
标签: jenkins continuous-integration hudson
有没有人尝试过该功能并有一些反馈?或者有谁知道一些有用的样本可以查找?
【问题讨论】:
标签: jenkins continuous-integration hudson
几个月前我尝试过这个功能,但我不再使用它(只是因为我不需要它,而不是因为它不是一个好功能)。
基本上,你定义n个轴,每个轴是一个有几个值的属性。
让我们举个例子:定义轴“JDK”,可能值为“1.4”、“1.5”、“1.6”,并定义另一个属性“database”,其中可能值为“oracle”、“ mysql”。
因此,Hudson 将启动您的构建 6 次:
然后,一旦一切完成,您将能够看到每次迭代的结果。
当您需要在多个环境中测试您的应用程序时(在我的示例中,使用不同版本的 JDK 或数据库),此功能可能非常有用。
请注意,除了 JDK 轴,您必须自己管理 Hudson 作为条目给出的属性。在我的示例中,应用程序必须考虑“数据库”属性本身。最后,一个好主意是使用这个属性在 Maven2 配置中启用一个特定的配置文件,如果你的项目是 mavenized 的话(有关详细信息,请参阅 here)。
我希望我的解释足够清楚:)
【讨论】:
withCredentials、sh 等来提取值
矩阵构建有许多问题:
这很遗憾,因为这个概念非常好,而且在它起作用的地方非常方便。
编辑
我们通常的解决方法是将参数化构建设置为同时运行 - 这有其自身的问题,但可以避免我们有许多具有相同代码和不同常量的作业。
【讨论】: