我有一个高度自定义的TFS 2013 XAML构建工作流程。它具有在构建控制器上运行的自定义代码,用于启动/停止构建虚拟机。是否可以在构建代理程序的机器之外执行自定义任务?如果是这样,在哪里以及如何。
答案 0 :(得分:0)
对于vNext构建系统,您可以添加批处理脚本或 PowerShell 任务作为结束任务,以运行您需要的任何命令。
批处理脚本例如:
如果您要停止/启动座席服务:(参考this article)
net stop <Service-Name>
net start <Service-Name>
如果要关闭/重启远程计算机:(参考this article)
Shutdown : shutdown /m \\machinenameOrIP/s /t 0
Restart : shutdown /m \\machinenameOrIP /r /t 0
有关启动/停止VM的命令,请看此链接:https://technet.microsoft.com/en-us/itpro/powershell/windows/hyper-v/start-vm
注意:
无论运行什么命令,请确保服务帐户具有在VM上运行它们的足够权限。
<强>更新强>
如果构建VM已关闭,我们无法在构建过程中启动VM,因为构建服务未启动,构建代理必须处于联机状态。