运行 Jenkins 建立在推送到 Bitbucket 上的随机存储库的基础上
Run Jenkins build on push to random repository on Bitbucket
我在 Bitbucket 上托管了很多存储库,它们需要在 Jenkins 中触发构建。这些存储库都需要以大致相同的方式构建。基于 Bitbucket 有效负载,我想用一个小脚本克隆推送的存储库并构建该特定项目。我至少需要 repo URL 和 branch。这是我迄今为止尝试过的。
尝试 #1
正在使用Bitbucket plugin。这只会在 SCM URL 松散匹配时触发,这永远不会是这种情况,因为我不知道存储库 URL 正手因此这种尝试不适合我的用例。
尝试 #2
使用内置远程触发器;这实际上工作得更好,因为我能够 运行 使用正确的令牌从任何存储库构建。但是,此尝试失败了,因为我无法检索 Bitbucket 发布到 Jenkins 的有效负载。我已经能够确认有效载荷没有通过构建中的 运行ning printenv
传递,它不显示有效载荷。
目标
- 如何从 未知 Bitbucket 存储库 URL 触发构建?
- 如何检索已由 Bitbucket Push 事件传送的有效负载?
我正在使用 Jenkins 2.8。
经过大量研究,我得出的结论是我的用例过于具体,无法使用开箱即用的解决方案。因此,我开发了一个小型 Node.js 服务,它充当小型代理服务器。它从 Bitbucket 接收有效负载,然后在将数据发送到 Jenkins 之前转换该数据。奇迹般有效。
我在 Bitbucket 上托管了很多存储库,它们需要在 Jenkins 中触发构建。这些存储库都需要以大致相同的方式构建。基于 Bitbucket 有效负载,我想用一个小脚本克隆推送的存储库并构建该特定项目。我至少需要 repo URL 和 branch。这是我迄今为止尝试过的。
尝试 #1
正在使用Bitbucket plugin。这只会在 SCM URL 松散匹配时触发,这永远不会是这种情况,因为我不知道存储库 URL 正手因此这种尝试不适合我的用例。
尝试 #2
使用内置远程触发器;这实际上工作得更好,因为我能够 运行 使用正确的令牌从任何存储库构建。但是,此尝试失败了,因为我无法检索 Bitbucket 发布到 Jenkins 的有效负载。我已经能够确认有效载荷没有通过构建中的 运行ning printenv
传递,它不显示有效载荷。
目标
- 如何从 未知 Bitbucket 存储库 URL 触发构建?
- 如何检索已由 Bitbucket Push 事件传送的有效负载?
我正在使用 Jenkins 2.8。
经过大量研究,我得出的结论是我的用例过于具体,无法使用开箱即用的解决方案。因此,我开发了一个小型 Node.js 服务,它充当小型代理服务器。它从 Bitbucket 接收有效负载,然后在将数据发送到 Jenkins 之前转换该数据。奇迹般有效。