重要的提示
它没有开箱即用的功能,通常我会设法使人们远离诸如“测试”,“部署”之类的通用任务,并让他们考虑整个工作过程中的测试并让他们定义他们想要一路执行的中间测试。
诸如发行说明和部署之类的通用内容可以完全自动化。可能也使用powershell;)。
因此,我尝试让人们将精力集中在使用Powershell-fu上来自动化这些通用和不良任务。
答案
当然,这并不是您本身问题的答案。因此,这是真正的答案,是的,powershell是一个选项,您可以调用REST api或客户端对象模型,并使用它来查询工作项并创建新的工作项。该API广泛使用,并且在博客文章等方面有很多信息。或者,您可以创建一个小型控制台应用程序,该应用程序也使用相同的客户端对象模型。
您还可以使用警报中的SOAP api来在添加或更改工作项时得到通知,并通过添加必需的子工作项来使您的代码起作用。
SOAP api的替代方法是使用TFS Aggregator之类的东西,它可以集成到服务器本身中。它使用相同的TFS客户端对象模型。我是构建它的团队的一员,我们已经针对2013u2 +和2015+发布了该版本。TFS聚合器允许您编写使用C#脚本的Powershell来对工作项更改进行操作的规则。从自动化的角度来看,在使用客户端对象模型时,它已经做了很多工作来防止常见的陷阱。
TFS聚合器是TFS 2013(更新2和更高版本)的服务器端插件,它现在能够基于规则创建新的工作项。可以在此处找到示例任务: