【问题标题】:How can I get the email address of the user who triggered a build in TeamCity?如何获取在 TeamCity 中触发构建的用户的电子邮件地址?
【发布时间】:2013-06-25 04:07:51
【问题描述】:

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

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

【问题讨论】:

    标签: teamcity teamcity-8.0


    【解决方案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
    

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

    【讨论】:

    【解决方案2】:

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

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

    其中 %teamcity.build.triggeredBy.username% 是 TeamCity 变量,其中包含触发构建的用户的用户名。顾名思义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 2012-11-10
      • 2015-10-12
      • 1970-01-01
      • 2013-08-31
      相关资源
      最近更新 更多