2

我们为构建提供唯一的构建编号,其中包括时间戳和 git 提交。给定这些内部版本号之一(并且没有其他信息),我想找到构建它的构建配置。

如果我在右上角的“搜索”框中输入内部版本号,它可以正常工作,列出内部版本并注意:

1 build found (matches in build number — 1) in 662ms

如何通过 REST API 访问相同的信息?我检查了API 文档,但看不到与 UI 中公开的通用“搜索”等效的调用。或者,我想直接通过内部版本号直接获取构建详细信息和/或构建配置(http://teamcity:8111/httpAuth/app/rest/buildTypes),但是虽然有一个number:定位器,它只能是结合使用buildType:(这正是我试图识别的信息)。

4

1 回答 1

2

尝试使用TeamCity REST API中的内部版本号定位器构建请求。

我们在 PS 脚本中使用 API 方法通过 id 检索构建,如下所示:

$password = ConvertTo-SecureString -String "$teamcityPassword" -AsPlainText -Force
$credentials = New-Object System.Management.Automation.PSCredential -ArgumentList $teamcityUsername, $password

function GetBuild([string] $buildId) {
    $url = "$teamcityUrl/httpAuth/app/rest/builds/id:$buildId"
    Write-Host "GetBuild:$nl$url"

    return Invoke-RestMethod -Uri $url -Credential $credentials -Verbose -WebSession $session
}

所以我认为你应该能够用“数字”定位器做类似的事情:

$url = "$teamcityUrl/httpAuth/app/rest/builds/number:$buildNo"
于 2017-01-23T07:07:45.593 回答