使用参数触发构建

Trigger build with parameters

在 TC 升级到 2018 之后 我之前使用参数触发 TC 构建的脚本不起作用

我们使用的脚本使用以下 api:

https://[server]/httpAuth/action.html?add2Queue=[build name]&name=[param name]&value=[param value]

我正在尝试迁移到 restApi 来自 (https://confluence.jetbrains.com/display/TCD18/REST+API#RESTAPI-QueuedBuilds):

我试过了

https://[server]/app/rest/buildQueue?locator=buildType:[build name],[param name]:[param value]

目前我有两个问题:

  1. 我成功触发了构建 - 但尚未触发
  2. 文档不明确,如何使用参数触发构建? 您能否建议如何使用参数成功触发构建(也可以超过 1 个)

首先你对TeamCity的说明文档不清楚。敬此link;

要触发构建,您必须向此 url 发出 POST 请求并通过正文发送 buildType id。

http://localhost:8111/httpAuth/app/rest/buildQueue 

您也可以将配置参数传递到正文中。

XML 触发器构建的正文,参数为:

<build><buildType id="YourBuildTypeId"/>
<properties><property name="PARAM1" value="VALUE1"/></properties>
</build>

JSON 触发器构建的正文,参数为:

{
  "buildType": {
  "id": "YourBuildTypeId"
},
  "properties": {
  "property": [
    {
     "name": "PARAM1",
     "value": "VALUE1"
    },
    {
     "name": "PARAM2",
     "value": "VALUE2"
    }
   ]
  }
}

您可以使用下面的 curl 脚本。

curl -X POST \
http://localhost:8111/httpAuth/app/rest/buildQueue \
-H 'Accept: application/json' \
-H 'Content-Type: application/xml' \
-d '<build><buildType id="YourBuildTypeId"/>
<properties><property name="PARAM1" value="VALUE1"/></properties>
</build>'