This page describes how your development team can start using the Bamboo continuous integration server to get rapid feedback on your .NET project.
You may want to read Understanding the Bamboo CI Server first.
We assume that you already have:
- Bamboo installed and running. See the Bamboo installation guide for details. You'll want user accounts in Bamboo for each member of your team.
- Source code under version control. Each team member will have access to the repository.
- Tests, as part of the source code for the project.
- A command that builds the code and executes the tests.
The continuous integration workflow we want is:
- A developer commits code.
- Bamboo builds the project:
- Connects to the repository and checks out the source code.
- Compiles the code.
- Runs the unit and integration tests.
- Bamboo provides feedback on the test results.
How do we achieve this with Bamboo?
Well, we'll create a new Bamboo plan that knows how to check out and build our source code, and then report on our test results.
Create a Bamboo plan
A Bamboo plan is where you define the details of your continuous integration workflow.
A plan allows us to specify a source code repository, when Bamboo gets triggered to run the build, and how Bamboo should provide feedback on the test results.
1. Plan details
Click Create Plan in the menu bar, and then Create a New Plan.
Every plan belongs to a project. We don't have a project yet, so choose Project > New Project, and enter details for both the project and plan.
See Configuring plans for details.
2. Choose a source repository
Bamboo needs to know where the source code repository is located, and needs access to the repo so that it can check out the code when it runs a build.
Choose the repository type from Source Repository, and provide access details such as username and password.
See Connecting to code repositories for details.
3. Triggering the build
We can choose how Bamboo gets triggered to run the plan build.
We want Bamboo to build the project whenever code is checked into the repository.
Choose Trigger type > Repository triggers the build..., and optionally, specify an IP address for the repository server.
See Triggering builds for details.
4. Configure tasks
Each plan needs to have one or more tasks specified. Tasks do the real work of the plan.
The source code checkout task
A newly created plan has a default Source Code Checkout task that gets the source code from the source repository specified earlier.
See Checking out code for details.
The builder task
We also want to compile the code. We'll add a builder task to the Bamboo plan to do that. We assume that your project already has a build process set up that Bamboo can call upon.
Click Add Task, then Builder and choose the task that matches the build tool for your project. Expand one of the following sections to see configuration details specific to that builder task:
Seefor information about MSBuild.
See http://nant.sourceforge.net/ for information about NAnt.
See http://www.microsoft.com/visualstudio for information about Visual Studio.
Note that a build tool needs to be installed on the Bamboo server machine before you can use the Bamboo task.
Getting the test results
Now we want to run the unit and integration tests, and display the results from those. You need to set up one of the MSTest, NUnit or MBUnit tasks so Bamboo can get and display the test results. You can specify a custom results location if your project directory doesn't use the conventional structure.
See Configuring a test task for details.
Enable the plan, and click Create.
You should see the plan run. The 'Plan Summary' tab will report whether the build succeeded or not.
Tests in the appropriate directory in the source code repository will be run automatically as part of the build, and the test results will be displayed in Bamboo.
Now, whenever you commit a change to the repository, Bamboo will build your source code and report on your test results.
Bamboo displays a summary of the results of the build on the dashboard.
You can get further information about the build in the following ways:
- Build results for one or more plans can be displayed on a wallboard.
- You can get notifications about build results sent to you by email, IM and RSS feed.
- You can get build statistics about plans, and about developers contributing code to the build.
- You can drill down into the results to see the code changes that triggered the build, and the tests that were run for that build.
See Getting feedback for details.