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 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. |
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 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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
Upgrade MSBuild builds from previous versions of Team Foundation Build. You can use existing MSBuild files by using the Upgrade Template. |
See Also
Concepts
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