Information is key to most businesses, and sharing it between teams quickly and efficiently gives you an advantage over the competition. If you’re using different platforms, like Jira and HP ALM, then connecting them will let teams manage the flow of data more flexibly. In this blog post, we’ll walk you through a Jira HP ALM integration.
Connecting systems means you can share data while still taking advantage of each platform’s unique features without the need to leave your familiar environment.
In this article, you’ll first read about the advantages of setting up a Jira HP ALM integration, and then I’ll cover how to pick the right integration solution. Finally, you’ll learn how to set up the integration yourself in a step by step guide.
Here’s what is covered in this blog post:
- Why You Need a Jira HP ALM Integration
- Choosing the Right Technology for Setting up a Jira HP ALM Integration
- How to Set up a Jira HP ALM Integration (the Step-by-Step Process)
Why You Need a Jira HP ALM Integration
Teams using different platforms may have some crossover in the data they use. They are likely to have different workflows and will use that data in different ways. Automated tools can filter and exchange data to help each team share it with the other.
What is Jira?
Jira is a project management tool that allows you to track and assign issues. It is especially popular with software developers and has support for agile methodologies. You can create projects and organize them into sprints, making it easy to organize your work.
What is HP ALM?
Application Lifecycle Management is another tool popular with developers. It allows you to manage your products throughout their lifecycle giving you tools to help develop them and track issues throughout their lifecycle.
It includes a broad set of specialized features, including asset management, quality assurance, and security tools, as well as project management features.
Why Connect Jira and HP ALM?
If you have teams working on Jira and HP ALM they will often have the information they need to share. Doing this manually is time-consuming and error-prone. Setting up a Jira HP ALM integration can facilitate data sharing while guaranteeing its security and integrity.
You may have an engineering team working on one platform and a customer support team working on another, for example. These teams will look at many of the same issues, but use data concerning them very differently. An integration can bridge the information gap, giving each team the data it needs to do its job.
Choosing the Right Technology for Setting up a Jira HP ALM Integration
When setting up an integration, there are several key choices to make. To get these decisions right, you need to choose the right integration solution that has a few criteria:
The value of your integration will depend on how closely it fits your needs. Being able to configure it to solve your exact problems will maximize its potential.
Being able to change the integration, later on, can help make sure it stays a good fit for you as your needs evolve. Your solution configuration should be easy to change and adapt. You should also be able to have your integration perform multiple tasks, as well as disable and enable it as required.
Both teams should be able to act independently once the integration is set up. They may want to adjust the outgoing data or control how incoming data is used. You need to have full control over what is shared, as well as the conditions for data exchange.
This can be achieved by giving each team their own independent admin screen to control how their end of the connection works with the integration.
If the teams don’t have autonomy, then it makes it much harder to make changes. Meetings need to be called, and quick experimental changes become harder. There is the potential to impact the other teams’ work by changing something they use.
Your solution should accommodate both teams, allowing them to stay in charge of how the integration works on their end.
Connecting information systems is always a delicate task, and never more so than when the systems are run by different teams in different locations. Minor errors and outages commonly cause knock-on issues on systems they are connected to.
To avoid problems, you need a system that can handle the various issues that can happen from time to time. Your integration should be able to stay in place if an outage disrupts on either side and re-establish itself when the connection comes back online.
For this guide, I use Exalate. Exalate is a cross-company integration solution that provides a secure and autonomous yet flexible synchronization for a variety of platforms.
How to Set up a Jira HP ALM Integration (the Step-by-Step Process)
Now I’ll show you how to set the integration up. I’ll start by installing Exalate on both platforms. After that, I’ll explain how to create a connection between them. The next steps are to configure the connection and control what it syncs, as well as choose when synchronization occurs.
Step 1 – Install Exalate on Jira
Before installing Exalate on Jira, you need to check which version you have. This guide uses Jira Cloud. If you’re running your own Jira Server instance, read this guide. There’s also a section on Jira Cloud in the documentation if you need more information.
In Jira Cloud, login and click on the settings icon at the top right of the screen. In the menu click “apps”. You’ll be taken to the Atlassian marketplace. Re-enter your credentials if you need to.
In the “Find new apps” section of the marketplace, click the search box and type in “Exalate”. Several versions of Exalate will be listed. The one you want is “Jira Issue Sync and More”.
To install it, click “Try it free”, followed by “Start free trial” on the next screen.
Next, you’ll have to wait a few seconds while Exalate installs itself on Jira. When it’s ready, a confirmation will appear with some “Get started” text you can click on.
That’s all you need to do for now. Next, let’s move on to installing Exalate on HP ALM.
Step 2 – Install Exalate on HP ALM
To use Exalate with HP you need to install an instance on a separate server. To learn more about it have a look at this documentation.
You can install it as a docker image or an RPM package. With docker, you’ll need to install docker itself, then create a.yml configuration file. Then you need to create a script to run everything. You can read more about it here.
To install it as an RPM package, you first need to set up PostgreSQL and then install Open JDK. After that, you can install Exalate by running yum localinstall exalate-hpqcnode-5.0.7.noarch.rpm
For more details on how to do that, read these instructions.
Once your instance is set up, you need to connect it to your HP ALM server. There’s a guide to that here. If you’re behind a firewall, you’ll need to whitelist connect.exalate.com. You’ll also need to get an Exalate application URL from the support team. That also needs to be whitelisted.
After that, you need to look at the HP ALM application on your server. Access the general settings section from the left-hand menu, and configure your setup. You need to enter your HP ALM URL, your Exalate node URL, as well as the username and password of the user that will be used for authentication.
There’s a button to test if it is working correctly. If so, click the “Save” button.
You also need to get a license. To do that, look at your Exalate node’s left-hand menu. Click on the “License Details” text.
Next, click on the 30-day trial image and enter your email in the box that pops up. Check your inbox and you should find a message containing an evaluation key.
Copy that to your clipboard, then, back in Exalate, click the “Licence Key” button at the bottom of the page.
Paste the license key into the field that appears. Click “Update” and your license will be activated. You’ve got 30 days to try Exalate out.
Step 3 – Connect Your Jira and HP ALM Instances
Now, I’ll show you how to set up a connection between Jira and HP ALM. You can do this step in either one, but I’ll use HP ALM in this guide. Exalate uses a consistent interface across platforms, so the process is basically the same.
Log in to your node, and then select “Connections” from Exalate’s left side menu. Click the green “Initiate connection” button at the top right.
On the next screen, you need to select “Public” or “Private” depending on the accessibility of the destination instance. If you’re not sure what the right answer is, read this. I’m picking “Public” here. Click “Next” to continue.
Next, enter your destination instance. If you’re doing this on HP ALM, that will be your Jira address. If you’re doing it on Jira, it will be the address of your HP node.
After that, Exalate will check if it can find the other node. If so, more fields will appear. If not, take a look at steps one and two to make sure you have installed everything correctly, and set up your licenses.
When the new fields appear, you’ll see you can give a name to your local and destination instances. Exalate will then automatically combine the names to generate your connection name. You can edit this if you prefer to call it something else.
There’s also a description field. Don’t neglect this, as it will help you figure out what you were doing if you come back to it later. It will also help other people work with the connection more easily.
When done, click “Next”. On the next screen, you can choose if you want to use single project sync rules or a more advanced template. I’ll cover advanced configuration in steps four and five, so “Single project” will do for now.
Now you need to choose where entities received from the other side of your connection will go. You can pick a domain and a project. “DEFAULT” is an option for the domain if you’re not sure. The project to use is up to you. Entities that match your synchronization rules in Jira will be created as new entities here.
When you’ve chosen a project and domain, click “Initiate”. Exalate will now let you create an invitation code. It will ask if you have admin access to the other side. Leave the default, “Yes”, selected and click “Copy invitation code”. This will copy the invitation code to your clipboard. It is a good idea to paste this somewhere safe before going to the next steps.
Click “done” and you’ll see the connection listed as pending in the list.
Now, you need to log in to your other instance. In my case, that will be Jira. Click the cog icon in the top right and select “Add ons”. Re-enter your credentials if asked, then go to the connections screen by clicking “Connections” in the left side Exalate menu. Click the “Accept invitation” button.
In the popup that appears, paste your invitation code in the space, then click the green “Next” button. You’ll be taken through similar configuration steps to those above. First, you need to choose a sync rules template. Again, you can leave the default “Single project” selected.
Next, you’ll see a dropdown box where you can pick a project to put shared entities from HP ALM. Once you’ve done that, click the “Confirm” button and your connection will be created. You can now move on to configuring your synchronization.
Step 4 – Configure Your Connection to Share the Right Data
In this step, you can decide what is shared over your connection. You can choose what fields are shared, and which fields map to one another. You can also use specific values on newly created items as well as use advanced logic to decide what values to use.
If you’re following this guide step by step, you can go straight into the configuration by clicking the “Configure Sync” button visible at the end of step three. If not, just look for your connection in the connections list and click the edit connection button to reach the same screen.
You can also use the connections list to delete connections, temporarily deactivate them, and switch quickly to the remote side of the connection.
On the edit connection screen, there are four sections. These are named “Triggers”, “Rules”, “Statistics” and “Info”. “Triggers”, which you’ll look at in the next section, is selected by default.
The statistics page has some details on what types of items are synced. It tracks issues, comments, and attachments. You can also see when the last synchronization took place.
The info tab has some of the details you entered earlier, such as the connection name, type, and description. It is particularly useful if you forget your destination URL.
Now, look at the rules tab. It is divided into an “Outgoing sync” section and “Incoming sync” section. If you are looking at this screen in HP ALM, the outgoing rules describe how HP ALM items are mapped before being sent to Jira. The incoming rules describe how mapped items from Jira are copied to HP ALM entities. Those relationships are inverted if you are viewing this screen in Jira.
Sync rules use the “Groovy” scripting language. They are easy to edit. Read this to learn more about it, including how to make advanced changes. If you want to remove a rule, just delete the line. You can also use comments by adding “//” to the start of a line. That disables the rule but allows you to restore it quickly by removing the comment symbols.
You can change a rule to map to a different value or to a value you specify. For example, in the incoming rules is the line testCase.summary = replica.summary. That line means that the summary field is just being copied directly from one item to the other.
If you changed that to testCase.summary = ‘synced from Jira’, then the summary for synced items would include text letting you know where they came from.
Some of the rules mention “script helpers”. For example replica.comments use the comments helper. The script helpers can help you with tricky areas, like mapping multiple comments to a different field. Read more about them here.
When you’ve made the changes, click “Publish” in the top right to activate them. Next time syncing takes place, the fields will be mapped according to your specifications.
Step 5 – Create Automated Synchronization Triggers
Next, you’ll create triggers, which decide what makes synchronization take place. Triggers check for entities that match the conditions you specify and copy them from one side of the connection to the other, matching the fields defined in step four.
On the edit connection screen, click the “Triggers” tab, then click the “Create trigger” button. You’ll see the “Add trigger” screen. There’s also a “Triggers” entry in the left-hand menu. That works similarly to what I’m about to describe, but you’ll have to specify a connection for each trigger.
Firstly, you need to choose the entity type to apply the trigger to, using the drop-down box. Then you need to type the query to use in the box below it. The query will be used to filter items and decide whether or not they are synchronized.
Queries use JQL or Jira Query Language in both Jira and HP ALM. Formatting needs to match the HP ALM REST API. Read more about that here.
To filter open items, use status[Open]. To combine filtering rules you can use a semicolon, for example, id[>1]; status[Ready or Design], will include all queries with an ID greater than 1, and which have either ‘Ready’ or ‘Design’ as their status.
There’s also a description field where you can add a note describing what the trigger does and what it is used for. As with the connections, the more information you include here the better. Below that is a switch to activate the trigger. Don’t forget to click this when you set it up, or it won’t work!
When you’ve filled everything out, and activated the trigger, click “Add”. You’ll now see the trigger listed. You can add as many triggers as you like, and switch them on and off quickly using the status switch.
Step 6 – Start Task Synchronization
Now that your platforms are connected, they will automatically share items that match the conditions you set. They will be exchanged according to the field mappings you created. If you want to make further changes, look at step 4 to change the mappings and step 5 to change the conditions for synchronization.
If you don’t see items update straight away, don’t worry. For performance reasons, Exalate doesn’t update immediately, so wait for a few minutes before checking it has synchronized your items.
After that, you just need to sit back and let it help your teams stay connected.
Setting up a Jira HP ALM integration can bring great benefits to both sides of the sync. It sure helps the teams benefit from both platforms in the most harmonious yet secure way possible.
After you’ve set up your integration, you might have further ideas about what you can use it for, so you can always adapt the integration to meet your new requirements. The more of your work you automate, the more you can get done and the more productive your whole team can be.