Get Most Recent Build Statuses in TC 5.1.2

Hello,

I'm trying to retrieve the most recent build statuses for a set of build configurations with the fewest number of HTTP requests possible (because I'm polling).  Correct me if I'm wrong, but later versions of TC seem to work like this:

http://server/httpAuth/app/rest/builds/buildType:bt10

Can I do better than that?  Ideally I'd prefer one signle request rather than one per build configuration.  But regardless, this doesn't work in 5.1.2.  The older version of TC returns the following error:

Error has occurred during request processing (Bad Request). Error: jetbrains.buildServer.server.rest.errors.BadRequestException: Cannot find build by other locator then 'id' without build type specified.
Please check URL is correct. See details in the server log.

Now it does work when I pass in a build id like this:

http://server/httpAuth/app/rest/builds/id:12231

But now I'll somehow need at least one more HTTP request to retrieve the most recent build id's for each of my build configurations.  Ideally I'd do that in one request like this:

http://server/httpAuth/app/rest/builds/

But that seems to return the most recent 100 builds.  If one of my build configurations was build more than 100 builds ago then it wouldn't show up on the list.  That’s also way more data than I would prefer to pull.  Is there a way to filter it to the most recent given a list of build configurations?

If not the best I can come up with is either:

http://server/httpAuth/app/rest/buildTypes/bt10/builds?count=1 or
http://server/httpAuth/app/rest/builds?buildType=bt10&count=1

both of which return the most recent build id for a particular buildType.  This solution would work, but it would require a lot of requests (2 * # of build configurations).  Surely there is a better way?

Thanks for any help.

Please sign in to leave a comment.