如何将Visual Studio 2017添加到Team Foundation Server Build Agent?

8

我在我的服务器上安装了Visual Studio 2017来构建项目。该服务器正在运行Team Foundation Server 2015 Update 3。TFS 2015中显示的选项为“Visual Studio版本中的最新版本”,但当我构建项目时,它无法构建并显示代理程序没有visualstudio、vstest、msbuild功能的消息。我试图手动添加功能,但它不起作用,并显示未找到Visual Studio。


1
我发现了一个新版本的代理,它似乎能够检测到VS2017。 - Matthew Sharpe
@MattSharpe — 两个问题:1)你的成功CI构建包括测试步骤吗?2)如果是这样,你安装了完整的IDE还是只安装了构建工具?另外,我仍然想知道您的服务器上是否有vstest.console.exe(最可能在 C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\CommonExtensions\Microsoft\TestWindow 中)。如果有,你是通过安装完整的IDE还是只安装了构建工具得到它的?我猜那其实是四个问题;-) - InteXX
@InteXX 在构建代理上安装了完整的Visual Studio。代理检测到vstest.console.exe位于C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow,并在能力中进行了报告。 - Matthew Sharpe
@InteXX,我无法在TFS 2015中安装新的构建代理,它会说“不兼容的构建代理,请从我的tfs url下载构建代理”。你是如何完成这个过程的? - vishgarg
浏览我的评论,我发现我从未指出我的TFS版本。我使用的是2017.2版。 - InteXX
显示剩余13条评论
1个回答

3
如果您的构建代理不是安装在与TFS服务器(其中VS2017已安装)相同的机器上,请尝试使用在您的构建代理上安装Visual Studio,然后重新注册构建代理与TFS。如果您的构建代理和TFS服务器,VS2017都在同一台机器上,但在配置构建代理之后安装了VS,则需要重新注册构建代理与TFS,因为系统能力只有在首次配置代理时才会被发现 -- 之后做出的任何更改都不会被捕获。更多方法请参阅此类似问题:无法找到具有以下功能的代理:msbuild、visualstudio、vstest?

1
感谢 Patrick-MSFT 的帮助,愿上帝永远保佑你 :)除此之外,我还需要手动将“Visual Studio”的v15.0文件夹复制到MSBuild文件夹中。Visual Studio 2017有很多变化。 - vishgarg
我已经安装了最新版本的代理[v2.120.2](https://github.com/Microsoft/vsts-agent/releases/tag/v2.120.2),正如@MattSharpe上面指出的那样,但我仍然没有得到“vstest”功能。我正在运行TFS 2017。另外:如何“重新注册”构建代理? - InteXX
在 TFS 2017 (版本 15.105.25910.0) 中,如果你选择最新版,它会搜索 vs2015 和早期版本,不支持 VS 2017。 我们建议您升级到 TFS 2017.1。在 TFS 2017.1 中,在 vstest 任务中,您可以选择 2. *(预览)版本,然后如果选择 Latest 作为 vs 版本,则会找到 VS2017。更多详细信息,请参阅 https://social.msdn.microsoft.com/Forums/en-US/19ca4c82-6dc6-47cc-a740-18c01b7d826e/new-build-server-unable-to-determine-the-location-of-vstestconsoleexe?forum=tfsbuild 中的类似问题。 - PatrickLu-MSFT
谢谢@Patrick-MSFT。您能对我在与Matt Sharpe的对话中提出的问题发表意见吗?我也在尝试在此处查找(https://github.com/Microsoft/vsts-agent/issues/871)。 - InteXX
1
我了解到,只有安装IDE才能获得VSTest作为一个可用的系统功能。 - InteXX
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接