3

在 jenkins job shell 中,我想获取在 shell 中启动构建的用户,我该怎么做?

如果此作业由用户启动,则Build User Vars 插件运行良好,而它由上游作业等其他人触发,但它不起作用。like 的$BUILD_USER值为空。

在该页面中查看作者“Gavriil”的评论

这不是错误。只有在用户启动构建的情况下才能识别构建用户。如果构建是由其他原因触发的,则由计时器或上游作业结束

虽然在工作控制台中,但实际上我可以看到用户信息

Started by upstream project "arctifact2slave" build number 16
originally caused by: 
Started by upstream project "create-vm" build number 5
originally caused by: 
Started by user larrycai

有什么建议么

4

2 回答 2

6

我不确定您到底想达到什么目标,但按照我的理解,您可以执行以下操作。

  • 将字符串参数添加到您的根作业。影响它的 BUILD_USER 变量值。IE:${BUILD_USER}

  • 然后只需在“构建后操作 -> 在其他项目上触发参数化构建”部分中传递当前构建参数。

后续作业将能够读取该变量。

于 2013-01-17T12:12:08.543 回答
0

在大多数情况下,这个问题似乎已经得到解答,但我想为那些在他们的机器上拥有多个 Jenkins 副本和其他产品的人添加一些有用的东西:

我有一些链接到 SVN 的 Jenkins 服务器,它们做的事情类似于你正在尝试做的事情。我有脚本保存在主 Jenkins 触发后提交挂钩时初始化提交的人的用户名。这样,无论您使用哪个 Job、Jenkins 或其他服务器,您都可以访问该信息。

于 2015-05-28T13:41:52.833 回答