我尝试将构建配置附加到模板。我们正在运行TeamCity 10.0.2,使用PowerShell 4.0进行交互。
根据TeamCity 10 API documentation,可以将构建附件附加到模板操作:
从/向模板读取,分离和附加构建配置: GET /删除/ PUT http://teamcity:8111/app/rest/buildTypes/ /模板 (PUT接受带有" text / plain" Content-Type)的模板定位器
因此,我尝试将build12
版本配置附加到template12
模板,我执行此操作的代码如下:
$webclient = New-Object System.Net.WebClient
$creds = New-Object System.Net.NetworkCredential("user1","pass1")
$webclient.Credentials = $creds
$webclient.headers.Add("Content-Type", "text/plain")
$webclient.UploadString("http://teamcity:8111/httpAuth/app/rest/buildTypes/build12/template", "PUT", "TemplateId")
但我一直收到以下错误:
Exception calling "UploadString" with "3" argument(s): "The remote server returned an error: (400) Bad Request."
是否有人能够通过API将构建配置附加到模板?
答案 0 :(得分:0)
我看到你使用的是PowerShell,但你正在放弃C#WebClient
类来完成它。不要那样做:)
Invoke-RestMethod http://teamcity/httpAuth/app/rest/buildTypes/YourBuildId/template -Credential $credential -Method Put -Headers @{"Content-Type"="text/plain"} -Body Your_Template
这会将模板Your_Template
附加到名为YourBuildId
如果您需要有关-Credentials
param或其他任何内容的帮助,请与我们联系。
我实际上已经使用上面的工作......