3

TeamCity 有一个构建参数列表,它还知道触发构建的用户;但我在构建参数列表中找不到该用户名。

我希望能够向启动特定构建的用户发送电子邮件,而不必让该用户通过 TC UI 设置构建通知,为此我需要获取用户名/电子邮件构建完成后来自 TC 的地址;但我看不出我怎么能做到这一点。如何从 TC 获取用户信息?

4

2 回答 2

1

使用 REST API。

在您的构建脚本(无论是什么,powershell、nant、ruby、python)中,根据 buildID(通过查询 teamcity.build.id 获得)访问正在运行的构建

http://servername:8080/httpAuth/app/rest/builds/id:289

在返回的结果中,您可以解析出触发构建的用户 ID,然后再进行一次休息调用

http://servername:8080/httpAuth/app/rest/users/id:3

在这个结果中,您可以解析出电子邮件地址。

于 2013-09-14T10:55:11.023 回答
1

实际上,您可以通过一个 REST 调用来做到这一点:

http://servername:8080/httpAuth/app/rest/users/username:%teamcity.build.triggeredBy.username%

其中 %teamcity.build.triggeredBy.username% 是 TeamCity 变量,其中包含触发构建的用户的用户名。正如名字所说。

于 2016-04-01T14:17:43.023 回答