How to Sync Area and Iteration Paths Between Jira and Azure DevOps

Syed Majid Hassan -Exalate-
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
December 23, 2024

Azure DevOps area and iteration paths do not have a direct replica on the Jira side. So to sync information between both systems, the area and iteration path data has to be mapped to a custom field in the Jira issue.

For this to work, you need a customizable AI-powered integration solution like Exalate. This solution will help you generate the script for mapping paths and maintaining the relationships between the work item and the issue.

What is an Area Path?

An area path establishes a hierarchy for work items related to a specific project. It helps you group work items based on team, product, or feature.

image1.png

Organizations working on a product or feature can use area paths to establish a hierarchy between teams at every level of involvement. You can assign the same area path to multiple teams.

What is an Iteration Path?

An iteration path assigns work items at the project level based on time-related intervals. Teams can share them to keep track of ongoing projects, specifically for sprints, releases, and sub-releases.

image2.png

When new work items are added to the Sprint backlog, they become accessible via the existing iteration path. You can add up to 300 iteration paths per team.

Sync Area and Iteration Paths: Jira to Azure DevOps Use Case

You can create a custom field in your Jira instance to reflect the data from the iteration and area paths.

How does this help your organization?

  • Syncing this data gives more context about the teams involved on the Azure DevOps side.
  • It provides context about the timelines and stages of progress for the mapped projects and entities.

Primary Requirements

  • Obtaining the right information from the API on both sides.
  • Writing or generating the correct sync rules for both the incoming and outgoing data.
  • Creating triggers to update the custom fields on Jira automatically.
  • Fetching the right string from the area or iteration path.

How Exalate Handles Jira to Azure DevOps Syncs

Exalate supports one-way and two-way integration between Jira and Azure DevOps as well as with Zendesk, ServiceNow, Salesforce, GitHub, etc.

Exalate also supports AI-powered Groovy scripting with the help of a chatbot. Users can also create trigger-based integrations for real-time syncs and bulk operations.

To use Exalate, first install it on both Jira and Azure DevOps. Follow this step-by-step Getting Started guide to connect both of them.

Since this use case requires scripting, you need to choose the Exalate Script Mode.

To configure the sync, open Exalate in your Azure DevOps dashboard, go to the connection you want to edit, and click on the “Edit connection” icon. You have two options:

  • Outgoing sync (on the Azure DevOps side) refers to the data being sent over to Jira.
  • Incoming sync (on the Jira side) refers to the data to be received from the work item on Azure DevOps.

Outgoing Sync (Azure DevOps): Send Area and Iteration Path Details from Azure DevOps to Jira

To send out the area and iteration paths from the Azure DevOps work item, use the code below:

replica.areaPath = workItem.areaPath 

replica.iterationPath = workItem.iterationPath

The replica retrieves the values of the area and iteration paths from the work item and saves them as a string.

On the remote side, you can store the area/iteration path in a custom field using a type string or select list.

Incoming Sync (Jira): Set Area Path from Azure DevOps as a Custom Field in Jira

Let’s start with the area path.

The area path starts with the name of the project. For example, an Azure DevOps project called AzureProject handled by Exalate’s dev team could have an area path:

 AzureProject\\ExalateDev. 

To set the area path based on the value received from the remote side text field, use the code below:

issue.customFields."Area Path".value = replica.areaPath 

The issue.customFields."area-path".value retrieves data from the work item and stores it in the designated custom field on Jira.

Incoming Sync (Jira) Set Iteration Path from Azure DevOps as a Custom Field in Jira

The iteration path shows the name of the project as well as the specific sprint.

For example, an Azure DevOps project called AzureProject in the first sprint could have an area path:

AzureProject//Sprint1

If you don't set the value for the Area field in the Sync Rules, Exalate uses the default area that has the same name as the project.

To set the iteration path based on the value received from the remote side text field, use the code below:

issue.customFields."iPath".value = replica.iterationPath 

The issue.customFields."iPath".value retrieves data from the work item and stores it in the designated custom field on Jira.

Congratulations! You have successfully mapped the area and iteration path to a Jira custom field.

If you still have questions or want to see how Exalate is tailored to your specific use case, discuss it with one of our experts right away.

0 comments

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events