Challenge Overview
Challenge Objectives
-
Target environment: Bitbucket, Rally, Atlassian SDK, Java
-
Basic Requirements: Implement configuration parameters for our server extension - this has the same config params as the Rally Connector for Bitbucket Server to work with latest versions of Rally & Bitbucket
Bitbucket is a Git-based SCM that is a product of Atlassian. Rally ALM (Application lifecycle management - now called CA Agile Central) is a software project management suite that focuses on the Agile delivery of projects. It allows scrum teams to define user stories, test cases, defects and other project artifacts. In order to gain higher levels of developer productivity, it is important that an enterprise’s SCM can talk to the project management tool and vice versa.
More specifically every commit should have a reference to the ALM’s story id and vice versa. Our client enforces a commit log format that must include the Rally artifact ID to identify the work item that the changes are committed for. This is a common practice, however, the story in ALM does not have the authors of the commits nor links to the commits themselves.
Rally Connector for Bitbucket Server is a server extension that allows Bitbucket to integrate with Rally. The extension was written to support BitBucket versions 2.x-4.x and and our client is upgrading to 5.x - it no longer works with Rally due to security updates in July 2018.
You can find instructions on how to configure this connector here.
We want to build a connector which will provide the same features as the above mentioned server extension. This is the first challenge in which we focus on building the configuration params for our server extension.
Technology Stack
Bitbucket Server Development GuideAtlassian SDK
Java
Individual requirements
In this challenge, you are required to build the following features for BitBucket server extension for Rally ALM. We want to build a basic placeholder server extension with all configuration parameters. In the next challenge, we’ll focus on building the actual integration logic.
Server Extension Configuration
The server extension must implement the following configuration parameters (which work the same way in existing connector)1) Configuration at Bitbucket User Level
Should provide the following configuration params
-
Click your profile picture in the top right corner of the screen
-
Choose Manage Account
-
Click Bitbucket-Rally Extension on the left-side navigation bar
Check if your target WorkspaceConfiguration has BuildandChangsetEnabled set. Your Rally workspace administrator needs to enable this for your target workspace. If it is not enabled, the connector will work, but you won't be able to see any of the changeset or change information that is associated with your Rally work items (story, defect, task).
Create a Rally API key
A Rally API Key must be created to use to access your subscription data without using your username and password.
NOTE: Make sure to give Full Access for your Rally API Key
For help creating a full-access API Key, please visit http://help.rallydev.com/rally-application-manager.
2) Repository Settings
-
Go to Repository
-
Click Settings on the left-side navigation bar
-
Click Bitbucket-Rally Extension
Final Submission Guidelines
Final Submission Guidelines
- Submit your extension code (zip)
- Provide configuration & deployment steps for your server extension
- A video walking through your extension setup is helpful but not mandatory