我希望为定期构建和轮询SCM触发的构建目标设置不同的构建目标。
更具体:想法是每晚构建应该调用'mvn verify',其中包括集成测试,而普通构建调用'mvn test',它只执行单元测试。
如何使用Hudson实现这一目标?
干杯 克里斯
答案 0 :(得分:1)
您可以创建两个作业 - 一个已安排,另一个已轮询。 在计划中,您可以从轮询中指定不同的maven目标。
答案 1 :(得分:1)
Raghuram的回答是直截了当的。但你也可以有三份工作。前两个执行触发并将maven目标作为参数传递到第三个作业。听起来很混乱,而且在某种程度上它就是这样。但是,如果你有很多配置要做(特别是如果需要定期更改配置),它会有所帮助。这将有助于使两个作业的配置正确。配置不仅包括构建步骤,还包括所有报告的收集,构建后清理,通知,下游作业的触发,......另一个优点是,您不需要同步这两个作业,因此它们不会并行运行(如果这会导致问题)。
不要理解我错了,我的第一个冲动就是找两份工作,这有其自身的优势。每晚构建的历史将包含整天(实际上自上次每晚构建)以及不仅仅是自上次构建以来的时间(可能是触发的。集成测试通常需要更广泛的设置或访问稀缺当你运行测试目标时,你有两个工作就不会阻止这些资源。另外我希望Hudson需要更多的测试结果来显示和跟踪。你也可能希望运行更多的指标您的代码的结果应该由Hudson显示。缺点是您当然需要始终保持构建步骤基本相同。
但最终,如果你选择2到3个工作岗位,这是个案决定。