我使用 TeamCity (7.0) REST API 来允许开发人员触发自定义构建。我将构建添加到队列中,如下所示:
http://teamcity/httpAuth/action.html?add2Queue=[buildTypeId]&name=[propName]&value=[propValue]
我的问题是如何最好地跟踪刚刚触发的构建进度。REST 调用不会返回有关分配给构建的构建 ID 的任何信息,因此即使我轮询构建列表(正在运行/已完成),我也不知道其中一个是否是我触发的。队列中可能有相同 buildTypeId 的多个构建,因此我需要一种方法来分离出我所追求的那个。
我在某处读到一个建议,您可以为放入队列中的每个构建添加一个具有唯一值的构建属性,然后轮询构建列表并查找具有该确切属性值的构建列表。然而,我还没有找到一种列出构建属性的方法,所以我仍然卡住了。此 REST 调用不提供有关属性的信息:
http://teamcity/httpAuth/app/rest/builds/?locator=buildType:[buildTypeId]
关于如何解决这个问题的任何建议?理想情况下,我想知道构建是否在队列中,是否正在运行,以及何时完成我想获得状态。然而,最重要的是要知道它是否已完成以及状态如何。