运行 Jenkins 建立在推送到 Bitbucket 上的随机存储库的基础上

Run Jenkins build on push to random repository on Bitbucket

我在 Bitbucket 上托管了很多存储库,它们需要在 Jenkins 中触发构建。这些存储库都需要以大致相同的方式构建。基于 Bitbucket 有效负载,我想用一个小脚本克隆推送的存储库并构建该特定项目。我至少需要 repo URLbranch。这是我迄今为止尝试过的。

尝试 #1

正在使用Bitbucket plugin。这只会在 SCM URL 松散匹配时触发,这永远不会是这种情况,因为我不知道存储库 URL 正手因此这种尝试不适合我的用例。

尝试 #2

使用内置远程触发器;这实际上工作得更好,因为我能够 运行 使用正确的令牌从任何存储库构建。但是,此尝试失败了,因为我无法检索 Bitbucket 发布到 Jenkins 的有效负载。我已经能够确认有效载荷没有通过构建中的 运行ning printenv 传递,它不显示有效载荷。

目标

  1. 如何从 未知 Bitbucket 存储库 URL 触发构建?
  2. 如何检索已由 Bitbucket Push 事件传送的有效负载?

我正在使用 Jenkins 2.8。

经过大量研究,我得出的结论是我的用例过于具体,无法使用开箱即用的解决方案。因此,我开发了一个小型 Node.js 服务,它充当小型代理服务器。它从 Bitbucket 接收有效负载,然后在将数据发送到 Jenkins 之前转换该数据。奇迹般有效。