【发布时间】:2015-10-07 15:01:10
【问题描述】:
我在 TFS Build 中有自定义代码活动。其中之一是 TFS Build 不知道的后台线程。
我想知道这个线程是否有办法检查是否已请求“停止构建”。 (即在不需要 CodeActivityContext 的情况下检查当前的构建状态)
(注意:我不能使用 AsyncCodeActivity(及其取消机制),因为这仍然会阻止后续任务) 我目前正在使用心跳系统并依赖于 TFS 构建流程循环中的心跳超时,但这并不是万无一失的。 IBuildDetail.BuildFinished 存在,但是如果构建完成,你如何获得 iBuildDetail?
因为代码活动是“无状态的”,所以使用以前的“CodeActivityContext”来获取 iBuildDetail 不起作用,即上下文不再存在。 我可以访问 _buildServer.GetBuild(_buildUri) 的代码路径 但不知道如何建立您当前的 builduri(不要与构建定义、服务器、代理或编号混淆)
谢谢
【问题讨论】: