Skip to main content
Version: 24.3

Installing or Upgrading IssueSync for Jira

This article explains how to install or upgrade issuesync for Jira.

Installing IssueSync for Jira

These installation instructions assume that Jira and Digital.ai Agility are already installed and working properly.

Determine Install Location

The integration can be installed on any Windows system with HTTP access to both Digital.ai Agility and Jira. Exact placement should be determined by your internal software management requirements. The integration system must meet the System Requirements.

Extract Files

Download the integration from the Application Catalog and extract it into a folder of your choice.

Configure

Configuration for the Integration is a 3 step process.

  1. Configuring Jira
  2. Configuring Digital.ai Agility
  3. Configuring ServiceHost

Step 1. Configuring Jira

This section describes how to modify your Jira instance for use with the integration. Before you begin, you need decide if you want to the Assign or Label method to indicate the Jira issues you want visible in Digital.ai Agility.

Select or Create a Jira User

The integration requires a valid Jira User ID and a Password in order to connect to Jira. This user must have sufficient rights to accept work and modify issues (i.e. must be assigned to the Developer Role on the project). This user must also have rights to the actions being performed by the integration (for example, the user must have rights to close Issues).

Although the integration does not require administrator access to run, there are some validation rules that can only be checked with a Jira Administrator role. To help check first-time configuration, the recommended approach is to elevate the integration user to Administrator. After the integration has been verified (start the integration in the below steps) and before starting as a service (install as Windows Service in the below steps), reduce the Jira access to the Developer Role. Then you can safely ignore log warnings about validation rules that require administrator access.

Create Filters for Defects and Stories

These filters must be available through the credentials used by the integration; hence, it is recommended that you create these filters using the same credentials to avoid the complexity of shared filters.

The results of a Jira filter are used to determine which Jira Issues will be transferred to Digital.ai Agility. By using a Jira filter, you can make the integration fit with your existing Jira workflow and fields. The details of writing such a filter are beyond the scope of this document; however, the following are some simple examples.

alt text

FilterDescription
Type and Status FilterThe simplest Filter is to move all Jira Issues of a certain type and state to Digital.ai Agility.
Assigned User FilterIf only a subset of Jira Issues of a type and status should be moved, then you may want to create a Filter that transfers all Jira Issues that are associated with a specified user.

This method is not supported when integrating with Jira 5.2 or earlier.
Label FilterAnother method of transferring only a subset of Jira Issues of a type and status would be to create a Filter that transfers all Jira Issues that are labeled with "Agility" or some other value you or your organization designates.alt text

Please note that the label value must already exist on an Issue in order to create this type of Filter.
Custom Field or CombinationIf the Jira fields above would conflict with existing workflow, you may want to create a Custom Field and use it as part of the Filter.
Create a Custom Field to hold the URL to the Digital.ai Agility WorkitemBy default the integration puts the Digital.ai Agility Workitem information in the "Comments" section of the Issue. This information includes a URL to the Digital.ai Agility Workitem. You may optionally add another field to hold this data as necessary. To do this create the Jira Custom Field and note the 'fieldId' value in the Jira URL. This value is available to the Jira Administrator.

Step 2. Configure Digital.ai Agility

  1. Add "Jira" to Source of the Global List Types:
    Jira-global-list-source

  2. Determine where to store the Jira ID
    The integration needs a text field in Digital.ai Agility to store the Jira identifier; by default this is the Reference field. If you are already using this field, you'll need to create a custom text field in Digital.ai Agility and note the name.

Step 3. Configuring ServiceHost

To configure the Jira integration you need to run the ServiceHost configuration tool: ServiceHostConfigTool.exe

The following section describes how to configure the integration using the configuration tool.

On the General tab, specify your Digital.ai Agility connection details:

Updated-Config-Tool-Access-Token The following table describes the fields on this tab:

FieldDescription
AuthenticationThe API authentication method used by the integration to connect to the Digital.ai Agility server.
Access TokenThe access token generated for the Digital.ai Agility member account that the integration will use.
Server URLThis is the URL to your Digital.ai Agility server.
UsernameDigital.ai Agility user that will create Workitems (Defects and Stories), used only when not using an access token.
PasswordPassword for the specified Digital.ai Agility user, used only when not using an access token.

If there's a proxy between this machine and the Digital.ai Agility instance, you'll also need to configure the following settings:

FieldDescription
Use Proxy For ConnectionDetermines if the integration tries to connect through a Proxy.
Proxy URLThis is the URL to your Proxy Server.
Proxy UsernameThe username that will get you past this Proxy.
Proxy PasswordThe password for the Proxy Username.
Proxy DomainName of the Proxy Domain.

Once the Digital.ai Agility parameters are specified, click Validate button to continue. You should see a "VersionOne settings are valid" message appear before you can advance to the next step.

In the Workitems section, specify the Digital.ai Agility field that will hold the Jira ID.

Updated-Config-Tool-Reference-Field

The following table describes the fields on this tab:

FieldDescription
Reference Field NameDigital.ai Agility field used to hold Jira ID; by default this is the Reference field. If you created a custom field in Digital.ai Agility for this value, enter it here.
DisabledCheck this box to disable polling Digital.ai Agility for Workitem updates.

On the Jira tab, specify your Jira connection details and the Issue transfer behavior.

Updated-Config-Tool-Jira-Config

Configure the Jira connection.

FieldDescription
DisabledCheck this box if you want to disable polling Jira for new Issues.
Jira URLFully qualified URL to your Jira instance.
Don't forget /rest/api/latest
UsernameValid Jira user. This user must be able to see and update Issues in the appropriate projects.
PasswordPassword for specified user.

Configure Poll Interval.

FieldDescription
Poll IntervalDetermines how frequently the integration polls Jira looking for issues in minutes.

Configure Find Jira Issues.

FieldDescription
Create Defect Filter IDJira identifier for the filter used to determine which issues are pushed to Digital.ai Agility as Defects. This field cannot be empty.
Create Story Filter IDJira identifier for the filter used to determine which issues are pushed to Digital.ai Agility as Stories. This field cannot be empty.

Configure Update JIRA Issue.

FieldDescription
Link to Digital.ai Agility Field IDCustom Field Id in Jira used to hold Digital.ai Agility URL. If blank, the URL will be created in the Comments field in Jira.
Create Field IDName of the Jira Custom Field to update after a Workitem is created in Digital.ai Agility. If left blank, the JIRA Issue Status field will be updated.
Create Field ValueValue to set in "Create Field ID" after a Workitem is created in Digital.ai Agility. If left blank, the Jira Issue Status field will be updated to IN PROGRESS.
Close Field IDName of the Jira Custom Field to update after a Digital.ai Agility Workitem is closed. If left blank, the Jira Issue Status field will be updated.
Close Field ValueValue to set in "Closed Field ID" after a the Digital.ai Agility Worktiem is closed. If left blank, the Jira Issue Status field will be updated to RESOLVED.
Assignee State ChangedThe name of the Jira user to assign to the Issue once it's closed in Digital.ai Agility. A value of -1 will cause Jira to set the assignee based on workflow rules.
Progress Workflow CreatedThe Jira Workflow Transition ID to set once it's created in Digital.ai Agility.
Progress Workflow ClosedThe Jira Workflow Transition ID to set once it's closed in Digital.ai Agility.

Map your Projects

Project Mapping allows you to specify where Workitems are created in Digital.ai Agility. The algorithm for selecting a project is as follows: First, the integration looks for the Jira Project Name in the map. If it exists, the Workitem is created in the corresponding Digital.ai Agility Project. If the Jira Project Name is not found, the integration attempts to find a Digital.ai Agility Project with the same name. If found, the integration creates the Workitem in the Digital.ai Agility Project with a matching name. If it cannot find a Digital.ai Agility Project with a name that matches the Jira Project, the integration will create the Workitem in the root level node of the Digital.ai Agility Project Tree or in the first project in the list if there are multiple top level nodes.

Updated-Config-Tool-Mappings

To add a Project Mapping you need to do the following:

  1. Click on the Project and Priority Mappings tab
  2. In the Project Mapping grid, select a Digital.ai Agility Project value from the drop-down list.
  3. Supply the corresponding Jira Project name.
  4. To remove a mapping: Select the desired row.
  5. Click the Delete selected row button.

Map your Priority Values

Priority mapping allows you to configure how the Digital.ai Agility Workitem priority value is set based on the Jira Priority value. The algorithm for mapping is simple, if the Jira Priority value is in the mapping, the Digital.ai Agility Workitem priority value is set to the mapped value. If the Jira Priority value is not found, the Digital.ai Agility Worktiem priority value is not set.

Updated-Config-Tool-Mappings1

To add a Priority Mapping you need to do the following:

  1. Click on the Project and Priority Mappings tab.
  2. In the Priority Mappings grid, select a Digital.ai Agility Priority value from the drop-down.
  3. Select the corresponding Jira Priority value. Note that one Digital.ai Agility priority value may map to more than one Jira priority value.
  4. To remove a mapping: Select the desired row.
  5. Click the Delete selected row button.
  6. Save your changes and exit the configuration tool.

 

Upgrading IssueSync for Jira

If you already have the integration running in your environment, you should backup the existing integration before installing the current version.