To use Team Foundation Build, you must have at least one build machine. For any medium or large software effort, you will probably need multiple build machines. Later in this topic, examples of several build system configurations are offered.
A build machine is a computer on which you have installed and configured Team Foundation Build Service. The machine can be a physical machine (for example, a personal computer that is sitting under your desk or a workstation in a lab). You can also take advantage of the flexibility of a virtual machine to serve as a build machine.
Note |
|---|
You can set up an ad-hoc build machine on any computer that is available to you. For example, an individual developer who has an extra computer available could set it up as a build machine to use Team Foundation Build Service capabilities. |
Although you configure, modify, and manage a build machine directly on the computer where Team Foundation Build Service is running, the configuration data itself is stored in the team project collection.
The Team Foundation Build Service
To set up a build machine, you install, configure, and run Team Foundation Build Service.
Team Foundation Build Service is a Windows service that is listed in different locations within the operating system. Where it is listed depends on whether Team Foundation Build Service is running as a Windows service or an interactive service. (For more information about how to set this option, see Configure a Build Machine.)
When Team Foundation Build Service is running as a Windows Service:
In the Services node, Team Foundation Build Service is listed as Visual Studio Team Foundation Build Service Host. You can view the Services node in one of the following locations:
On a server operating system (for example, Windows Server 2008) in Server Manager
On a client operating system (for example, Windows Vista) in Computer Management
In Task Manager, Team Foundation Build Service is listed as TFSBuildServiceHost on the Services tab.
Note |
|---|
You can stop or restart the build service from the places in the previous list. By stopping or restarting the service, you effectively stop or restart the build machine. However, you can manage a build machine more conveniently by using the Team Foundation Administration Console. For more information, see Manage Your Build System. |
When Team Foundation Build Service is running as an Interactive Service:
Using Virtual Machines as Build Machines
You can deploy Team Foundation Build Service on a virtual machine (for example, a Hyper-V virtual machine that is running on a physical computer that is running Windows Server 2008). By taking this strategy, you can easily perform the following tasks:
Re-build the system from any state and any point in time. For example, if the system becomes corrupted, you can quickly revert to a snapshot of a clean environment and re-build the system.
Take a snapshot of a virtual machine, export it, and then archive it or share it with another member of your team.
The primary disadvantage of using a virtual machine is that it does work more slowly than a physical machine. If the amount of work that your builds require is small or if you run builds infrequently (for example, nightly), a virtual machine might suffice as a build machine in your system.
You can perform the following tasks to improve the performance of Team Foundation Build Service when it runs on a virtual machine:
Run your virtual machines on a physical machine that has a multi-core processor. If, for example, your physical machine has a quad-core processor, you could run four virtual machines at the same time, and they will perform reasonably well as build machines for many situations.
Dedicate and mount a physical hard disk to each virtual machine.