Benefits of integration
When Bamboo and Bitbucket Server are integrated, you and your team get all the following advantages:
Bitbucket Server tells Bamboo when to build
- When a developer pushes to a repository the build is automatically started.
Bitbucket Server tells Bamboo when to update plan branches to match changes in repository branches
- When a developer pushes a new branch to a repository a branch plan is automatically created.
- When a developer deletes a branch in a repository, the branch plan is automatically deleted or disabled.
Bitbucket Server commits are displayed in the relevant Bamboo builds
- In Bamboo, you can view all of the commits involved in the build, allowing you to accurately track changes:
- Simply click on a changeset to go to Bitbucket Server, where you can see the commit diff for all of the files that are part of the build.
Bamboo notifies Bitbucket Server automatically about build results
- Build notifications are automatically enabled when you link a build plan to a Bitbucket Server repository.
- Notifications are sent to all linked Bitbucket servers.
- You can see build results and other related information on the Builds, Pull request, Commits, and Branches pages so you can easily check the build status of a branch when deciding whether to merge changes.
Bitbucket Server displays the overall status of the build results. The status is 'passed' if all the different builds (for example, unit tests, functional tests, deploy to staging) have succeeded, and 'failed' if at least one run failed for any of those.
For example, when viewing the Commits tab for a Bitbucket Server project, you will see icons that indicate the status of the latest build results. The red 'fail' icon is displayed if there is at least one failed build run for the commit.
Note that the legacy Bitbucket Server notification type is deprecated – it is still available in Bamboo 5.6 but will be removed in Bamboo 5.7.
Bamboo provides support for Pull Request
Starting from version 6.0, Bamboo can create plan branches by pull requests. Create a pull request when ready to share your work with teammates and the CI system. Bamboo will detect new pull requests and create plan branch.
Note that Bamboo doesn't provide pull request support for forked repositories yet.
There are just a few simple configuration steps to get the integrations described above with Bamboo (versions 5.6 and later) and
Bamboo will be automatically configured to respond to repository events published by Bitbucket Server, and to notify Bitbucket Server about build results – you don't have to configure repository polling for new commits anymore in Bamboo, or set up dedicated web hooks in your Bitbucket Server instance.
1. Create an Application Link
You only need to do this once for each pair of Bitbucket Server and Bamboo instances.
Once linked, all the Bitbucket Server repositories are available to your plans in Bamboo.
2. Choose the Bitbucket Server repository for the Bamboo plan
Create a build plan (if necessary) and specify the repository in the plan (or job) configuration.
To connect to a Bitbucket Server repository, select Bitbucket Server / Stash and provide the Bitbucket Server details.
You must enable the SSH access on Bitbucket Server, otherwise the integration features won't work and you will have to provide an alternative HTTP repository type to connect to the Bitbucket Server repository.
See Bitbucket Server for more information about using Bitbucket Server source repositories in Bamboo.
You can also use the Bitbucket Server Rest API to automatically publish build status from Bamboo, Jenkins or any other build tool to Bitbucket Server. See the Bitbucket Server developer documentation to do with updating build status.