如何获取触发TeamCity构建的用户的电子邮件地址?

如何获取触发TeamCity构建的用户的电子邮件地址?,teamcity,teamcity-8.0,Teamcity,Teamcity 8.0,TeamCity有一个构建参数列表,它还知道触发构建的用户;但是我在构建参数列表中找不到该用户名 我希望能够向启动特定构建的用户发送电子邮件,而无需该用户通过TC UI设置构建通知,为此,我需要在构建完成后从TC获取用户名/电子邮件地址;但我看不出我怎么能做到这一点。如何从TC获取用户信息?使用REST api 在构建脚本中(不管是什么,powershell、nant、ruby、python),根据buildID(通过查询teamcity.build.id获得)访问正在运行的构建 在返回的结果中

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

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

使用REST api

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

在返回的结果中,您可以解析出触发构建的用户id,然后执行另一个rest调用

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

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

实际上,您可以通过一个REST调用来完成此操作:


其中%teamcity.build.triggeredBy.username%是一个teamcity变量,具有触发生成的用户的用户名。正如名字所说。

一些注释:您可以使用groovy插件,该插件将一些额外有用的参数与触发器用户名一起添加到构建中(如果是自动触发器,则使用一些预定义的字符串)。请参阅,这也是Teamcity 8.1中的路线图:
http://servername:8080/httpAuth/app/rest/users/id:3