使用参数触发构建
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 个)
首先你对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>'
在 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 个)
首先你对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>'