DevOps: Configuring Bamboo for Ossum DevOps

November 16, 2019

Requirements

Bamboo does not require extra git plugins to function with Ossum. The Bamboo server needs to be accessable via URL from the Internet. You will need to provide Ossum with the URL it needs to access this server, as well as a username and password.

Configure Bamboo

The Ossum DevOps feature will initiate jobs on your Bamboo server when commits happen or when merge requests are created or modified. It is up to you to create the jobs in Bamboo as well as configure the server for what you want the job to do. Ossum will take care of initiating your job at the appropriate time.

Create a Project

A good place to begin is by creating a Bamboo Project. From the create dropdown select "Create project".

Project

Complete the Project form by configuring a name and description.

Project Form

Add Ossum Credentials to Bamboo

Creating a Project will take you to the page to configure your Plan.

Create Plan

Select "Link new repository" for the "Repository host" section and select "Git". Fill in your Ossum repository details in the fields below and test the connection.

Plan Form

Verify Bamboo is able to connect to your Ossum repository.

Verify Connection

The next step is to create your job(s) by configuring Tasks in the Configure Job page. For more information on how to do this see Configuring Tasks

Configure Tasks

Once you have a plan configuration set you can proceed with updating Ossum with the build key in the job settings page. The name to configure in Ossum is located in the URL of the Plan Configuration page. The parameter is marked as buildKey, usually a combination of the Project name or initials and plan name or initials.

Build Key

Create Job Parameters

Ossum passes parameters to the build. You do not have to use or even define the parameters, but they are available to be used by the build to decide what it should checkout and build, decide what the build should do, or as information the build sends out in its notifications.

The parameters that Ossum will send to Bamboo are the same ones from the Jenkins configuration section. Here they are again for a reminder of the parameters with recommended defaults and descriptions.

Name Type Recommend Default Description
ossum_merge_request Boolean false 'true' if this is a merge request to be verified, 'false' for a normal commit
ossum_revision String */master git sha of the change
ossum_refspec String refs/heads/master git refspec of the change
ossum_before_revision String   previous git sha (could be used with git log to get changelog of commits)
ossum_url String   URL to view commit or merge request in Ossum

In Bamboo in order to use parameters passed into the build you need to reference them as environment variables and prepend them with bamboo. An example usage of bamboo parameters is shown below.

Task Parameter

Previous Article
DevOps: Configuring TeamCity for Ossum DevOps

No More Articles