如何触发jenkins构建bitbucket pull请求合并

时间:2016-06-22 06:39:46

标签: jenkins continuous-integration bitbucket

我查看了所有其他相关问题和答案,没有找到任何可靠的内容,因此我打开了一个新问题以寻求您的帮助,我一直在努力那天,我能得到的任何帮助都将受到高度赞赏。

这是我的环境:

  • 安装了git和bitbucket插件的自托管jenkins服务器(Jenkins版本1.651.3)。
  • https://bitbucket.org(我没有自托管的bitbucket服务器)

我想做什么:触发jenkins构建拉取请求从功能分支合并到主分支。

我尝试过的不同设置组合:

    • jenkins:'在将更改推送到BitBucket时构建'检查。
    • bitbucket:web hooks trigger:' Repository push'检查。
  1. 结果:在提交到master分支时成功触发了构建,但这不是我想要的,但至少我知道我的jenkins服务器和bitbucket之间的通信很好。

      • jenkins:'在将更改推送到BitBucket时构建'检查。
      • bitbucket:web hooks trigger:' Repository push'检查,并提取请求 - '合并'检查。
    1. 结果:jenkins不响应pull请求合并操作。我认为它可以工作,因为我有Pull Requst - ' Merged'检查了web hooks触发器设置,我确实看到请求是由bitbucket发送到我的jenkins服务器的,它从我的jenkins服务器返回了200个状态代码,但仍然没有任何反应。

        • jenkins:'在将更改推送到BitBucket时构建'检查。除此之外,我安装了另一个名为bitbucket-pullrequest-builder-plugin的插件,并根据指令进行配置。
        • bitbucket:web hooks trigger:' Repository push'检查,并提取请求 - '合并'检查。
      1. 结果:在bitbucket-pullrequest-builder-plugin的帮助下,构建确实是在创建拉取请求时触发的。但jenkins服务器不断轮询bitbucket存储库,我没有找到办法阻止它,只有在合并时才能触发构建......

        我听说那里的人说你需要在bitbucket服务器上安装一个post-hook插件才能做我想做的事情,但问题是我没有托管bitbucket。 ..

2 个答案:

答案 0 :(得分:0)

根据一些研究,您可以在2017年11月12日之前选择一些选项:

  • 使用支持拉请求触发器的通用here。然后从jenkins用post webhooks plugin拿起它,然后可能从jenkins做二次触发。

  • 将bitbucket服务器和webhooks升级为jenkins插件。服务器4.13不适用于以后的webhooks到jenkins插件。付费版本的插件可能是您的最佳选择。

  • 或尝试generic webhooks plugin附带的竹子。

答案 1 :(得分:0)

当您配置GIT - push,commit ... etc挂钩时,请务必检查JENKINS git选项,并设置BRANCH以检查(**指定所有分支),最重要的是,

使用localtunnel.me或类似设置你的JENKINS在线或它不会工作。