【问题标题】:How to trigger jenkins build upon bitbucket pull request merged如何在合并的 bitbucket 拉取请求上触发詹金斯构建
【发布时间】:2016-10-23 22:37:14
【问题描述】:

我查看了所有其他相关的问题和答案,没有找到任何可靠的东西,因此我正在打开一个新问题以寻求您的帮助,我整天都在努力解决这个问题,我可以提供任何帮助get 将不胜感激。

这是我的环境:

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

我想做的事:触发詹金斯根据拉取请求构建从功能分支合并到主分支。

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

    • jenkins:已选中“将更改推送到 BitBucket 时构建”。
    • bitbucket:网络挂钩触发器:已选中“存储库推送”。

结果:提交到 master 分支时构建成功触发,但这不是我想要的,但至少我知道我的 jenkins 服务器和 bitbucket 之间的通信很好。

    • jenkins:已选中“将更改推送到 BitBucket 时构建”。
    • bitbucket:网络挂钩触发器:“存储库推送”已选中,并且“拉取请求”-“已合并”已选中。

结果:jenkins 没有响应拉取请求合并操作。我认为它会起作用,因为我在 web hooks 触发器设置中检查了 Pull Requst - 'Merged',我确实看到请求是由 bitbucket 发送到我的 jenkins 服务器的,它从我的 jenkins 服务器返回了 200 个状态代码,但仍然没有任何反应。

    • jenkins:“在将更改推送到 BitBucket 时构建”已选中。除此之外,我还安装了另一个名为 bitbucket-pullrequest-builder-plugin 的插件,并按照说明进行了配置。
    • bitbucket:网络挂钩触发器:“存储库推送”已选中,并且“拉取请求”-“已合并”已选中。

结果:在 bitbucket-pullrequest-builder-plugin 的帮助下,构建确实是在创建拉取请求时触发的。但是詹金斯服务器不断轮询bitbucket存储库,我没有找到阻止它的方法,也没有办法在合并时触发构建......

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

【问题讨论】:

  • 感觉这个问题属于answers.atlassian.com。我遇到了类似的问题,并在那里找到了一些有用的帖子。
  • @Tylr 你找到解决这个问题的方法了吗?
  • 如果你是bitbucket服务器的管理员,你可以安装插件。

标签: jenkins continuous-integration bitbucket


【解决方案1】:

根据一些研究,截至 2017 年 11 月 12 日,您可以有几种选择:

  • 使用支持拉取请求触发器的通用post webhooks plugin。从 jenkins 用generic webhooks plugin 接它,然后也许从 jenkins 做一个二级触发器。

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

  • 或者试试"plan banches" feature 附带的竹子。

【讨论】:

    【解决方案2】:

    当你配置 GIT - push、commit... 等钩子时,一定要检查 JENKINS git 选择,并将 BRANCH 设置为检查(** 指定所有分支),最重要的是,

    使用 localtunnel.me 或类似工具将您的 JENKINS 设置为在线,否则将无法正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多