我们正在编写一个层,允许我们从另一个应用程序触发TFS下的构建。
目的是Microsoft Dynamics CRM站点可以触发构建。为了使这更简单,我们编写了一个非常简单的基于Web的服务,允许Dynamics站点启动构建,获取标识符,然后轮询状态和结果。
触发构建会执行以下操作:
IBuildRequest buildRequest = buildDefinition.CreateBuildRequest();
IQueuedBuild queuedBuild = buildServer.QueueBuild(buildRequest);
然后我们将queuedBuild(Id)的标识符返回给客户端。然后,它可以使用此标识符轮询服务,以查看构建是否仍在运行或已完成。问题是虽然queuedBuild确实允许我们通过Build属性访问实际的构建,但只有在构建到达队列的头部并且启动时才会填充。在此之前,此属性返回null(否则我们将使用构建标识符)。
好的,所以我想我只是继续查询排队的构建队列。好吧,直到构建完成,然后排队的构建从队列中删除,所以现在我们不能再获取构建信息。
我所追求的是一种无状态查询TFS以查看触发的构建是否仍在队列中,正在构建或已完成的方法。有没有办法做到这一点?
答案 0 :(得分:0)