Continuum will need outbound access to the Jira servers on whatever port Jira is setup to listen on (typically ports 80, 8080 or 443). The Jira server will need inbound access from Continuum on the same port. Continuum may also need inbound access on port 8080 from Jira. This is needed if you will be using Jira transition webhooks.
Configure the Jira Plugin
In the Continuum UI, upper right menu, select Administration -> Manage Plugins. Select Jira on the left and fill in the appropriate values.
The Name field is an arbitrary name for this instance.
Jira token / OAuth authentication is not supported at this time. The user will need the proper permissions to be able to query the API and the projects that are necessary. The URL will need to include the protocol and port if not port 80 or 443 (https).
If using the Atlassian hosted version of Jira, the URL will be in the following format. No port is required, but https is.
Make sure to check the "Is Default?" box.
Save button in the upper right corner.
To test that the configuration has the proper connectivity parameters, we will run a tool at the command line on the Continuum server.
On the Continuum server command line, run the following command:
This command resides in $CONTINUUM_HOME/common/bin which should be in your PATH. This script will attempt to use the configuration to establish a connection to your Jira server. If needed make changes to your configuration and rerun as needed.
Possible responses from the Jira plugin test tool:
"Jira plugin successfully configured" - all is well
"Jira server did not accept the credentials provided" - user id or password is wrong
"Operation timed out" - a timeout, wrong port, address or firewall issue
"nodename nor servname provided, or not known" - wrong address or DNS issue
"Jira plugin is not configured properly" - credentials and address worked, but Jira isn’t responding properly. Contact email@example.com.
Setup the Project to look for Work Items in Commit Messages
A best development practice is to have all source repository commits associated with a ticket in an issue or planning management system. This is usually done by putting the ticket or issue identifier in the commit message with some sort of flag or pattern that sets it apart from the rest of the log message.
In Continuum we can setup the project to parse the commit log messages as they come in and find the Work Items based on regular expressions. This will create a connection to the Work Item in Continuum and associate the Changes with it.
To lookup Lifecycle 'Assets' (Stories, Backlog Items, Defects, etc) from the commit messages of incoming changes, simply add a Directive to any Projects configured to accept changes from a repository.
Return to Project Management page (right hand menu, Flow > Manage Projects) and select your project. Go to the Source tab.
Add a new Directive (look for the button below the form). This will add it below any other in the list. We want it to be first in the list so grab the Directive in the upper left and drag it up to the top of the list if it is not already first.
Select the VersionOne Lifecycle Lookup Action, and make sure the When is set to Always. If there are more than one Lifecycle instances defined, you can specify the Name of which configured instance to use. Instance is optional, and will use the Is Default instance if left blank.
Your Directive should look as follows.
The VersionOne Lookup supports several additional arguments, all of which are optional. (Args can be added using the 'editor', or can be entered as JSON text using the 'text' mode.) To add a new argument, under Args click [+] add. In the first column replace newKey with one of the following options. In the second column replace null with the appropriate value.
- expression - by default, a regular expression is used that will match any Lifecycle Work Item. The expression can be modified here if desired. Must be a string value. This is the default if omitted: (?:[bBsSdD]|TS|Ts|tS|ts|AT|At|aT|at|TK|Tk|tK|tk)-\d+")
- fields - by default, the 'message' and 'branch' properties of a change submission will be searched. It is unlikely any other properties would contain the workitem, but nevertheless the option exists. Must be an array of strings like this: ["message", "branch"]
When using the 'editor', make sure to include the square braces and double quotes exactly as shown in examples above.
Make a New Commit
Now return to your local source and commit / push another change. Make sure to include the Work Item identifier in the commit message. An example of a commit message with a Jira identifier is as follows:
Changed the customer field label to be all upper case, CUST-353
Return to the Versions tab on the Project Detail page, you now see a Work Item. Expand and click on the Work Item. Explore the various tabs on this screen and notice how the Change is associated with the Work Item.
Return to Connecting to Tools