Define Your Build Process

After you establish a build system (as described in Configure Your Build System), you are almost ready to start to use Team Foundation Build to compile your code, run your tests, and perform many other important functions. The next step is to develop a build process, which contains your instructions about which code projects to compile, what actions trigger a build, what tests to run, and any other procedures required by your team.

Common Tasks

Common tasks

Supporting content

Create and work with a build definition. You can quickly define a simple but powerful build process that includes your instructions about which code projects to compile, what actions trigger the build, what tests to run, and many other options.

Create a Basic Build Definition

Define a Build Using the Default Template

Edit a Build Definition

Delete a Build Definition

Define a build process to support continuous integration.

Your team can minimize errors in its codebase by integrating various features into a shared repository as frequently as possible and then building and testing the result. You can implement this strategy, known as continuous integration, by defining a build process that ensures that you and your team can determine as quickly as possible that a check-in from a feature team has broken the build or caused a test to fail.

Build and Deploy Continuously

Define a Build Process to Support Continuous Integration

Use the Builds Check-In Policy to Minimize Code Churn after Breaks to Continuous Builds

Keep your team from "breaking the build."

When a developer checks in changes that break the build, the result can be a significant hassle for small teams. The cost to larger teams can be expensive as measured by lost productivity and schedule delays.

You can create a gated check-in build definition to guard some or all of your code base against this problem.

You can also use the Builds check-in policy as a tool to limit additional changes to your code base until a continuous build break is fixed.

Define a Gated Check-In Build Process to Validate Changes

Define a build process with automatic triggers. You can manually queue a build whenever necessary, but your team’s needs will, in most cases, be best met by a build process that starts a build automatically when one or more criteria are met. For example, you can configure your build process to start a build automatically whenever code is checked in or at the same time or times every day.

Specify Build Triggers and Reasons

Define your build process to load useful data. For example, you can automatically embed the name of the build definition and the date on which the build was run into the name of each completed build.

Work with Build Numbers

Define how workspaces are created. The build agent follows your specifications when it creates a build workspace to facilitate downloading the files (such as source code files) that it works on. You should define this workspace so that your build process runs efficiently.

Work with Build Workspaces

Publish the symbol data in your PDB files to a SymStore symbol store. If you publish this data, your team can debug code with IntelliTrace.

Publish Symbol Data

Control the verbosity of build information. It is often useful to get detailed information about a completed build, but a build process that logs too much information overloads your team members and your servers.

Manage Build Information and Control Verbosity

Define a build process that runs tests and to analyzes the impact of code changes on your tests. For example, you can define a build process to serve as your team’s regularly scheduled build verification test (BVT) run.

Use Your Build System to Work with Tests

Create custom builds. By using the Default Template, you can create a build process that meets a broad set of the most common requirements. However, many teams require their build processes to perform specialized tasks or follow customized logic.

Develop a Customized Build Process

Upgrade MSBuild builds from previous versions of Team Foundation Build. You can use existing MSBuild files by using the Upgrade Template.

Use Legacy MSBuild Builds Using the Upgrade Template

See Also

Concepts

Run and Monitor Builds

Manage and View Completed Builds

Administering Team Foundation Build

Build and Deploy Databases to an Isolated Development Environment

Build and Deploy Databases to a Staging or Production Environment

Other Resources

Team Foundation Build Reference