gpt4 book ai didi

git - 获取触发管道作业的用户名(手动或 scm 触发器)

转载 作者:行者123 更新时间:2023-12-05 06:40:13 35 4
gpt4 key购买 nike

我的工作有两种构建方式:

  1. 如果有人提交到 github 存储库,则触发作业。
  2. 如果有人手动构建作业。

在我的管道中,我需要获取直接(手动)或间接(SCM 提交)触发构建的人员的姓名/信息。我有以下代码:

node('slave'){
wrap([$class: 'BuildUser']) {
return BUILD_USER
}
}

这让我使用 https://wiki.jenkins-ci.org/display/JENKINS/Build+User+Vars+Plugin 得到了名字插入。

这适用于手动,但在通过 SCM 触发器时始终提供 SCM 触发器。我如何通过 SCM 获取 promise 触发发生的人员的姓名/信息?

最佳答案

ScmTrigger 不保存提交给 git 的用户的信息。您可以使用 git 命令获取提交的用户:

git log --format='%an <%ae>' GIT_COMMIT_ID
  • %an为作者姓名
  • %ae 为作者邮箱

另一种选择是使用 git hook 来触发作业而不是 SCM 轮询。在这种情况下,您可以将提交者从 Hook 传递给作业。 (例如 https://www.fourkitchens.com/blog/article/trigger-jenkins-builds-pushing-github )

关于git - 获取触发管道作业的用户名(手动或 scm 触发器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43082456/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com