Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Possible to mix VS 2019 build with TFS 2017 on Build Agent?

We want to migrate from VS 2017 to VS 2019. We are still on TFS 2017 and want to stay there for now.

I set up the build infrastructure a long time ago, so I am not certain anymore what the role of VS on the build agent is.. I certainly sometimes use it to manually open a solution that does not compile for unclear reasons, and I think it also was needed for some libraries.

I want the automated build process to use same VS as on developer machines, for consistency.

Can I uninstall VS 2017 and install VS 2019 on the build machine and the build will work using VS 2019? Or more generally: can I build using the VS 2019 build infrastructure on TFS 2017 build agent?

Thank you!

like image 799
Andreas Reiff Avatar asked Jul 16 '19 07:07

Andreas Reiff


People also ask

Is TFS a build server?

When you configure a build server, your first task is to install and configure the TFS build service. As part of this process, you'll need to: Install the TFS build service and configure a service account. Any build tasks, including deployment, will run using the identity of the build service account.

What is build controller in TFS?

It distributes processor-intensive work: for example, compiling code or running tests, etc., to the build agents. Each build controller is dedicated to a single team project collection. Ensure that the following requirements are met: Installed the supported components on your computer.

What is build agent and build control?

A build agent does the processor-intensive work of your build, which includes getting files from version control, provisioning the workspace, compiling the code, running tests, and merging files back into version control. Each build agent is dedicated to a single build controller.


Video Answer


1 Answers

Can I uninstall VS 2017 and install VS 2019 on the build machine and the build will work using VS 2019? Or more generally: can I build using the VS 2019 build infrastructure on TFS 2017 build agent?

The answer is yes, just like I said in that thread:

(I will answer this question again so that others can see the answer directly when they see this thread without having to redirect to that thread.):

Only the latest version has "full" compatibility with the latest Team Foundation Server

So, TFS 2017 have a high level of support for Visual Studio 2019 not full support. Since the product TFS2017 was launched earlier than Visual Studio 2019, TFS could not recognize the future products.

If we want to use the VS 2019 build infrastructure on TFS 2017 build agent, we have to specify the MSBuild path when using MSBuild task to build.

BTW, you could custom your MSBuild task with location of MSBuild 16.0 as task group, then you can use it instead of MSBuild task, you do not have to edit that task each time. But for those piplelines that are already in use, we have to modify our build definition.

Hope this helps.

like image 111
Leo Liu-MSFT Avatar answered Oct 13 '22 00:10

Leo Liu-MSFT