显示代码签入 gitlab 时触发了 Jenkins Server 构建的用户详细信息



我想显示触发了 jenkns 构建的用户的用户详细信息。我已经集成了 gitlab 和 jenkins,gitlab 通过 web hook 触发了 jenkins 上的构建。我们通过LDAP登录gitlab。有没有办法显示从 Jenkins 上的 gitlab 获得的用户详细信息???? 提前致谢

目前,我不相信这是不可能的。 但它是可以实施的。


在大多数情况下,通过 Git webhook 触发 Jenkins 作业时,作业本身不会直接触发,而是通知 Jenkins 对于给定的 Git URI,可能存在更改。

然后,Jenkins 轮询 Git 以查找更改,如果发现新内容,则会触发使用该存储库的作业的构建。 因此,此时,各种作业刚刚开始,没有收到有关发生的 webhook 推送的任何特殊信息。

此外,新构建可能由来自多个不同人员的多个提交触发,因此将单个人的名字显示为触发构建的人可能没有意义。

但是,有一些特殊的实现可以理解不同托管服务(例如GitHub,Bitbucket等(的webhook有效负载格式。

事实上,GitLab Hook 插件看起来像是这样的:如果你通过 /gitlab/build_now webhook 端点开始构建,那么在构建页面上,你会看到构建启动的原因,例如"由合并请求功能触发 -> 开发"或"由 push on branch development 触发,有 2 个提交"。

虽然插件的一部分似乎确实从有效负载中读取了作者的姓名(大概是用于合并请求(,但这目前并未显示在构建页面上。

因此,您可以尝试实现这一点或在 Jenkins 插件上提交功能请求。


作为短期解决方法,您还可以查看每个构建的"更改"页面。 在那里,您可以看到该构建中存在哪些提交,并且作者姓名应显示在每个提交旁边。

您可能需要在作业配置中的 Git 部分下配置"存储库浏览器"才能正常工作。

最新更新