根据拉取请求从 Bitbucket 触发 Jenkins 作业

Sho*_*ler 5 build bitbucket webhooks jenkins git-branch

希望得到专业人士的意见。我的最终目标是在发生bitbucket拉取请求时触发 jenkins 构建。如果有人能给我一个 ELI5(像我 5 一样解释)答案,我将不胜感激。对不起,如果这是错误的格式,我是 jenkins 和 stackoverflow 的新手。

到目前为止我做了什么:

  1. 在 bitbucket 中创建了 webhook 并将 URL 提供给我的 jenkins 工作。示例:http://jenkinsURL:8080/job/boulevard-dev/generic-webhook-trigger/invoke?token=myPull_Request_Token

  2. 拉取请求网络钩子触发器

  3. 在 Jenkins 中,在源代码管理下我有:Source Code Management Settings。这当前正在获取大量分支,失败,然后在作业开始时构建主分支?

  4. 对于构建触发器,其他 stackoverflow 文章已将我指向“通用 Webhook 触发器”。https://github.com/jenkinsci/generic-webhook-trigger-plugin

  5. 我不完全确定应该如何有效地设置这个通用的 webhook 触发器?希望有人有使用它的经验并可以解释需要什么。

  6. 这是在其他文章中看到的引用。构建触发器设置 构建触发器设置 2

问题:

  • 通用 webhook 触发器的正确​​设置/示例是什么样的?
  • 目前,当对 master 进行更改或合并到 master 时,我的工作会触发,我如何向我的工作指定我希望构建 bitbucket 拉取请求分支?
  • 另外,我发现了这个,不确定它是否与我的问题有关?https://jira.atlassian.com/browse/BCLOUD-5814

Rah*_*wad 8

根据您的要求,只要发生 bitbucket 拉取请求,您就可以按照以下步骤触发 Jenkins 构建,在我的例子中,它工作正常。

步骤(1) - 配置 Jenkins
(i) 将您的 bitBucket 存储库和分支添加到源代码管理 在此输入图像描述 (ii) 构建触发器将轮询 SCM 设置为 * * * * * 每分钟运行一次,以检查来自 bitBucket 的拉取请求。 在此输入图像描述

步骤(2) - 配置 Bit Bucket Hook
(i) 转到设置并添加新的钩子,现在根据您的要求设置拉取请求触发器。 在此输入图像描述

步骤(3) - 发出拉取请求并查看 Jenkins 上自动触发的新作业。 在此输入图像描述

  • Rahul,是否可以在创建拉取请求时仅构建拉取请求分支?我看到在这个例子中,Jenkins 看起来只会构建 master 分支。 (3认同)