后构建触发器与手动触发的构建和定时器触发的构建不同

时间:2012-01-18 17:39:26

标签: continuous-integration hudson jenkins

简化,我在Jenkins有一个“构建版本”(BR)项目,用于检查和构建代码,以及一个测试此代码的“完整测试”(FBT)项目。

晚上,BR项目由计时器触发,我需要BR项目在完成后触发FBT项目。但是,如果我手动触发BR项目,我希望之后触发FBT项目,因为这会从构建服务器中获取太多资源。

有没有办法在詹金斯实现这一目标?

1 个答案:

答案 0 :(得分:1)

有几种方法可以解决这个问题:

解决方案1 ​​

  1. 向BR项目添加一个参数,一个名为TriggerFBT的布尔值。默认值为CHECKED。
  2. 在BR项目中,使用Conditional BuildStep Plugin检查TriggerFBT参数。如果已更新,请添加构建步骤(Parameterized Trigger Plugin)以运行FBT作业。请注意,您希望将其作为构建步骤,而不是构建/发布后的类型。
  3. 手动触发BR作业时,您需要记住取消选中TriggerFBT参数。因为默认情况下会检查TriggerFBT,所以当通过计时器触发BR项目时,FBT项目最终会被触发。

    解决方案2

    1. 从BR项目中删除计时器触发器。
    2. 创建一个新作业 - 称之为TimerBR。将定时器触发器添加到TimerBR。
    3. 在构建步骤中,使用Parameterized Trigger Plugin首先执行BR项目,等待完成,然后执行FBT项目。