2016-03-15 117 views
1

如何根据更改列表表单启动定期基础构建Perforce?如何使用perforce在jenkins中触发构建

詹金斯的工作需要检查perforce更改列表从12.00 A.M到8.00 P.M,并且需要在每天8.00 P.M触发构建。如何在Jenkins中使用perforce触发构建?

回答

3

使用Jenkins Perforce Plugin您将能够使用Perforce客户端配置Jenkins作业。

在一个新的自由泳的工作,你将有 the options

  1. 高级项目选项中,你可以指定一个自定义的工作空间。这是P4插件将与客户端同步的文件夹。 (稍后可以使用WORKSPACE变量引用它)
  2. 源代码管理您可以在其中配置要使用的Perforce客户端以及如何使用它。
  3. 构建触发器您可以在其中选择何时构建。 “民意调查SCM”根据您指定的时间参数轮询您的Perforce客户端(H/5 H(0-19)* * *将从12:00至19:59每5分钟检查一次),而,我相信,“建立定期”将按照时间表触发构建。 (0 H(20)* * *会在20:00每天晚上触发一次构建)

我相信詹金斯强迫某项工作在特定时间运行是不好的做法,因为詹金斯使用HASH值尝试并在其服务器上分配负载,所以更好的时间表是(HH(20)* * *),因为这样可以让詹金斯主人在20:00和20:59之间触发构建。具体时间不是随机的,而是从作业名称内部生成的

+0

由于请求者想要在晚上8点触发构建,我不认为轮询SCM在此工作。 poll scm会查找更改,一旦找到它,触发器就会生成一个build。 唯一的选择是预定的触发器。它应该设置为每天晚上8点触发。它会自动获取最后一次构建之后到现在为止所做的更改。但这里也有问题。在上一次构建之后,它将采取所有更改,而不是在上午12点至晚上8点之间完成的唯一更改。 –

+0

@AmolManthalkar调查SCM不会立即触发变更..它有一个时间表(如上所述),它将决定何时Job将检查Perforce是否发生变化,并且上述掩码将在晚上8点至晚上9点之间检查每晚的变化 - 设置时间表后,您可以在作业配置表单中看到作业何时轮询Perforce。如果自上次作业运行以来没有对存储库进行任何新更改,则说明作业不会触发。 如果工作必须每天晚上运行,则“构建期间”字段中的相同掩码将执行此操作。 –

相关问题