如何触发jenkins Job将代码推送到开发服务器?

时间:2017-06-16 12:40:40

标签: jenkins bitbucket

我在bitbucket有开发代码库,在bitbucket有另一个测试脚本代码库。现在我通过链接测试代码库来设置Jenkins作业。有没有办法在开发存储库中更改时自动触发jenkins作业?

2 个答案:

答案 0 :(得分:1)

您可以将BitBucket Plugin添加到Jenkins实例。它允许您在BitBucket中配置webhook,然后触发任何Jenkins作业监听该webhook。该插件的页面有详细的细分,但基础是;

  1. 在你的BitBucket回购中,create a new Webhook使用你的Jenkins网址。我相信网址通常为http://[your jenkins url]/bitbucket-hook/
  2. 使触发器成为回购推送。
  3. 在Jenkins作业中,选中“构建触发器”部分下的“在将更改推送到BitBucket时构建”框。
  4. 现在,只要您提交了创建Webhook的repo,就会运行Jenkins作业。

    您还可以通过参数化Jenkins构建来限制哪些分支触发提交,以忽略某些分支/关键字/等,如果这是您特定项目所需的内容。

答案 1 :(得分:0)

Builds by source changes

您可以让Jenkins轮询您的修订控制系统以进行更改。您可以使用与Unix / Linux上的crontab相同的语法指定Jenkins轮询修订控制系统的频率。但是,如果轮询周期短于轮询修订控制系统所花费的时间,则最终可能会为每个更改生成多个版本。您应该将轮询周期调整为长于轮询修订控制系统所花费的时间,或者使用提交后触发器。您可以检查每个构建的轮询日志,以查看轮询系统所需的时间。

或者,您可以使用URL触发器(如上所述),而不是在固定时间间隔内进行轮询,但可以使用/ polling而不是URL末尾的/ build。这使得Jenkins对SCM进行了轮询,而不是立即构建。这可以防止Jenkins运行构建,而不会对影响与作业无关的模块或分支的提交进行相关更改。使用/轮询时,必须为轮询配置作业,但计划可以为空。