Getting data from TeamCity Rest API – PowerShell
Simple script that gets build data from TeamCity server rest api. When executed as a build step, you can pass in current build id to it. Having that, we can get the previous build and it’s data. Having that data we can proceed with further processing which can be for example gathering documentation, statistics etc. Please make sure you have enabled running ps scripts on your server.
Enjoy!
param ( [int]$BuildId = 2274, ) #gets last build date by build id Function GetLastBuildDateByBuildId($LastBuildId_) { $secpasswd = ConvertTo-SecureString "mypassword" -AsPlainText -Force $cred = New-Object System.Management.Automation.PSCredential("username", $secpasswd) $build = (Invoke-RestMethod -Credential $cred -Uri "https://teamcity:88/httpAuth/app/rest/builds/id:$LastBuildId_").build; return [DateTime]::ParseExact($build.startdate.split("T")[0],'yyyyMMdd', $null) } #get last build date $lastBuildDate = GetLastBuildDateByBuildId ($BuildId -1) $lastBuildDate