Atlassian Bamboo CI Service
GitSwarm provides integration with Atlassian Bamboo for continuous integration. When configured, pushes to a project will trigger a build in Bamboo automatically. Merge requests will also display CI status showing whether the build is pending, failed, or completed successfully. It also provides a link to the Bamboo build page for more information.
Bamboo doesn't quite provide the same features as a traditional build system when it comes to accepting webhooks and commit data. There are a few things that need to be configured in a Bamboo build plan before GitSwarm can integrate.
Setup
Complete these steps in Bamboo:
- Navigate to a Bamboo build plan and choose 'Configure plan' from the 'Actions' dropdown.
- Select the 'Triggers' tab.
- Click 'Add trigger'.
- Enter a description such as 'GitSwarm trigger'
- Choose 'Repository triggers the build when changes are committed'
- Check one or more repositories checkboxes
- Enter the GitSwarm IP address in the 'Trigger IP addresses' box. This is a whitelist of IP addresses that are allowed to trigger Bamboo builds.
- Save the trigger.
- In the left pane, select a build stage. If you have multiple build stages you want to select the last stage that contains the git checkout task.
- Select the 'Miscellaneous' tab.
- Under 'Pattern Match Labelling' put '${bamboo.repository.revision.number}' in the 'Labels' box.
- Save
Bamboo is now ready to accept triggers from GitSwarm. Next, set up the Bamboo service in GitSwarm
Complete these steps in GitSwarm:
- Navigate to the project you want to configure to trigger builds.
- Select 'Settings' in the top navigation.
- Select 'Services' in the left navigation.
- Click 'Atlassian Bamboo CI'
- Select the 'Active' checkbox.
- Enter the base URL of your Bamboo server. 'https://bamboo.example.com'
- Enter the build key from your Bamboo build plan. Build keys are a short, all capital letter, identifier that is unique. It will be something like PR-BLD
- If necessary, enter username and password for a Bamboo user that has access to trigger the build plan. Leave these fields blank if you do not require authentication.
- Save or optionally click 'Test Settings'. Please note that 'Test Settings' will actually trigger a build in Bamboo.
Troubleshooting
If builds are not triggered, these are a couple of things to keep in mind.
- Ensure you entered the right GitSwarm IP address in Bamboo under 'Trigger IP addresses'.
- Remember that GitSwarm only triggers builds on push events. A commit via the web interface will not trigger CI currently.