2013-12-20 45 views
2

我有一个可以启动PowerShell脚本的构建。它所做的是收集代码覆盖度量标准,然后将该信息存储在数据库中。我想从该脚本中传递一个值并将其返回到构建工作流程中,以便我可以通过或基于该值通过构建失败。将一个值从powershell传递到TFS构建工作流程

关于我如何实现这一点的任何想法?

回答

3

最简单的方法是让PowerShell抛出异常。这也会导致Powershell返回非0退出代码。在您的InvokeProcess中,您既可以处理错误流,也可以将Result参数分配给构建工作流中的变量,然后使用if块来通过或失败构建。

或者您可以使用exit函数返回覆盖率结果,它将被分配给InvokeProcess活动的Result属性。

exit 12345; 
+0

是否有可能创建自定义错误代码,这样我可以将它与真正的错误隔离?希望这是有道理的。 – AspiringTFSGuru

+0

这个选项怎么样?将覆盖阈值传递给PowerShell,覆盖过程将运行,如果传入值小于结果,我可以从PowerShell中设置构建状态。 – AspiringTFSGuru

+0

当然,这也是可能的,从powershell调用'exit'函数:http://blogs.msdn.com/b/powershell/archive/2006/10/14/windows-powershell-exit-codes.aspx – jessehouwing

相关问题