0
votes

I need to create a CI-CD pipeline in TFS 2017(TFS is hosted on a server) for a WPF Application. WPF Application is built on Visual Studio 2017 edition & code branch is located in TFS.

A part of CI-CD, I need to first install Agent. I am new with this.

  1. So want to know, Do i need to install Agent on the server(where TFS Hosted) only or the Agent can be installed on my laptop as well?

  2. I tried install agent on the TFS Server & a default agent has been created. But then while creating build on TFS, receiving issue: "No agent found in pool Default which satisfies the specified demands: msbuild visualstudio vstest Agent.Version -gtVersion 2.115.0"

Pls. help.

2

2 Answers

0
votes

Answer your questions:

  1. You can install the build agent on your laptop as well. Check the following link and configure the agent on your laptop:

https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/v2-windows?view=azure-devops

  1. Error "No agent found in pool Default which satisfies the specified demands: msbuild visualstudio vstest Agent.Version -gtVersion 2.115.0" means you don't install VS on your TFS server, where the default build agent runs.

If you want to use the current default agent, you need to install VS on your TFS server and restart the agent service afer installation. If you have VS installed on your laptop, you can deploy an agent on your laptop, and choose this agent when you queue builds.

-1
votes

The TFS build agent should be installed on a dedicated server. There are a several reasons for this.

  1. Performance:- A build may need a lot of resources to run (RAM and CPU, plus Disk space and IO) a build running may affect the performance of the rest of the server.
  2. Security:- Build agents often require a high level of permissions to work. If you have this running on the TFS server a script could do a lot of damage to the server, especially if the TFS database is on that server.
  3. Correctness:- Your laptop contains a bunch of stuff that you use for development and may not be available in production. Having a dedicated server allows you to validate the build in a "clean" environment.
  4. Scaleability:- Once you have a build server specified, adding additional build servers is easy and will allow you to run multiple types of build at the same time.

"No agent found in pool Default which satisfies the specified demands: msbuild visualstudio vstest Agent.Version -gtVersion 2.115.0"

This is likely because the tools required to build the software are not installed on the TFS server, this is similar to point 3 above. In order to compile the code and run unit tests a number of additional tools need to be installed on the same server as the build agent. Installing Visual Studio 2017 with the appropriate modules (WPF development) should solve this problem. You should not install these tools on the TFS server itself, but use a dedicated build server.