JIRA Integration Plugin allows to import Issues from JIRA into Targetprocess and create an association between JIRA issue and Targetprocess Bug. All types of Jira Issues (e.g. Bug, Task, Improvement) are imported as Bugs in Targetprocess. No other types of entities are supported so far.
This article describes built-in JIRA Integration Plugin for Targetprocess which is quite limited and obsolete. Whenever possible, instead of using the plugin, we recommend to rely on more powerful solution and configure data synchronization between JIRA and Targetprocess within Tasktop Sync connector.
How the Plugin works
Once an Issue in JIRA is associated with Bug in Targetprocess:
- Bug updates in JIRA will be reflected in Targetprocess, such as changing Bug Status, Details, Custom fields, Assignee, Reporter and adding Comments;
- Changing bug state in Targetprocess will trigger changing bug status and resolution in JIRA.
Supported JIRA versions: 3.13 and up to 6.4 inclusively. JIRA 7.0+ and JIRA On-Demand are not supported in the moment.
How to set up the Plugin
This is a quick step by step guide on how to install and get the integration up and running.
Step 1 - Installation
To set up Jira plugin, navigate to Settings → Plugins → Old Plugins and click Add Profile for JIRA Integration plugin. The profile form will appear. You should specify Profile Name. It is recommended to use project name in profile name, since each profile relates to exactly one Targetprocess project.
Step 2 - Connection
Make sure that your JIRA installation allows remote API calls.
Several parameters should be specified in the profile to enable JIRA connection:
- JIRA URL: just a URL to JIRA server;
- JIRA login and password: login and password of any valid JIRA user that has permissions to required bugs;
- Sync Interval: parameter that specifies how often Targetprocess will run synchronization job. Please note that interval cannot be less than 5 minutes.
Step 3 - Project mapping
Each JIRA Integration profile relates to one and only one project. It means that if you want to enable integration for several projects you need to create several profiles.
There are two options to let Targetprocess know which bugs relate to Project A and which relate to Project B:
- You can import all bugs from JIRA project to Targetprocess project;
- You can create custom Filter in JIRA and associate results of this filter with Targetprocess project.
If you do not want to create filter in JIRA, just select Targetprocess project and type JIRA project key in the Key field.
If you want to use the filter from JIRA, it is required to create the filter first.
Then you can set the filter name in the Key field using the following pattern “Filter: MyFilterName” (see the example below):
After that save profile settings (find Save & Exit button at the bottom of the screen). Push ‘Check connection’ button to ensure that Targetprocess can connect to JIRA server.
Step 4 - States Mapping and Resolution
States mapping is quite a complex thing. The reason for that is that JIRA has two concepts: State and State Transition, while Targetprocess has only States. In States mapping you should specify relations between Targetprocess states and JIRA statuses.
It is highly recommended to have identical Bug workflow in JIRA and in Targetprocess.
Lets take the following Targetprocess Bug Workflow as an example:
It can be mapped in the following way:
Step 5 - Severities Mapping
Priorities in JIRA relate to Severities in Targetprocess. It is recommended to configure severities in Targetprocess exactly the same way as in JIRA. You can configure it under Settings → Business values → Bugs Severities. By default JIRA has the following values for priorities:
Default severities can be mapped as shown below:
Step 6 - Users Mapping
Plugin allows to assign users on imported bugs. By default, users in JIRA and Targetprocess are mapped automatically if one of the following criterea is true:
JIRA login = Targetprocess login JIRA email = Targetprocess email
However, if there is no such a user in Targetprocess, it will be required to map it in Users Mapping area.
If you set Default Targetprocess user all unmapped users will be assigned to bugs as this Default user. Once it is set, any login and email matches will not be checked except for those mentioned in Users mapping.
Step 7 - Roles Mapping
There are two type of Roles in JIRA: Assignee (person who will fix a bug) and Reporter (person who added a bug). In Targetprocess these Roles can have different names. By default Roles are mapped in the following way:
If you have different workflow, you can specify another mapping. Exact Role names can be checked in Targetprocess Bug Workflow.
Step 8 - Custom Fields Mapping
If you have custom fields in JIRA you can synchronize them as well. It is recommended to create the same custom fields in Targetprocess (Settings → Processes → Your Project Process → Custom Fields) and map custom fields in profile.
For example, we have Customer_reported custom field in JIRA as shown below:
The same custom field is created in Targetprocess as shown on the picture below.
In this case correct mapping will look like that:
Step 9 - JIRA Properties Mapping
Bugs in JIRA have some unique properties that by default do not exist in Targetprocess. You can import this information as well if required using custom fields created in Targetprocess.
For example, to enable Due Date property synchronization, the following steps are required:
- Create custom field for Bug entity named Due Date (text box);
- Specify custom field name in JIRA Integration profile.
If you don’t want to synchronize some properties, you can leave fields blank in the profile.
For Components you can create Drop Down custom field in Targetprocess and fill it with the same values as in JIRA.
Now it’s time to save Plugin Profile and Enable integration.
If the plugin is configured accurately you will see Jira bugs added to Targetprocess.
How to Check Synchronization Results
JIRA synchronization will be run as often as configured in the plugin profile. You can’t run it immediately, but you can reset synchronization time to say plugin that synchronization is required. To reset synchronization time navigate to Plugins, expand JIRA Integration plugin and push the button for the required profile.
To check sync results, click Log link for plugin profile. You will see sync log.
The log shows all the sync sessions with results: how many bugs were added or updated as well as JIRA Ids. You can click on the date to see sync session details.
If you have errors in the log, bugs will not be imported again. It is required to update profile with changes that fix import problem (for example, change mapping) and push Reset Sync Time button. Thus JIRA plugin will know that it is required to re-import these failed bugs again.