是否可以使用服务消息(或其他一些编程方式)标记TeamCity构建?

时间:2014-11-10 16:51:38

标签: teamcity-8.0

是否可以使用服务消息标记TeamCity构建,或者从构建步骤中采用其他一些编程方式...?

如何做到这一点?

3 个答案:

答案 0 :(得分:1)

TeamCity中有一个VCS标签,您可以在构建成功时或在每个构建时进行标记。它与您正在寻找的内容相对应吗?

答案 1 :(得分:1)

另请参阅以下stackoverflow讨论:

Programatically pin a build in Teamcity

此外,由于stackoverflow上有两个开放的问题,我遇到了同样的问题,我编写了一个解决它的TeamCity插件:

https://github.com/echocat/teamcity-buildTagsViaBuildLog-plugin

答案 2 :(得分:1)

是的,有。您可以使用REST API as described here。基本上,

使用纯文本添加标签

curl -s  --header "Authorization: Bearer $TOKEN" \
    -H 'Content-Type: text/plain' \
    "https://ci.ACME.com/app/rest/builds/5375/tags --data tag-1 
tag-1

将标签列表读取为json

curl -s -H 'Accept: application/json'  \
     -H "Authorization: Bearer $TOKEN" \
     "https://ci.ACME.com/app/rest/builds/5375/tags"
{"count":1,"tag":[{"name":"tag-1"}]}

使用json覆盖标签,将其恢复为xml(默认值)

curl -s  --header "Authorization: Bearer $TOKEN" \
     -H 'Content-Type: application/json' -X PUT \
    "https://ci.ACME.com/app/rest/builds/5375/tags \
     --data '{"count":2,"tag":[{"name":"tag-A"},{"name":"tag-B"}]}'
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><tags count="2"><tag name="tag-A"/><tag name="tag-B"/></tags>