Synchronizing incidents with Azure DevOps work items via BMC Helix iPaaS, powered by MuleSoft
As an administrator, you can integrate BMC Helix ITSM with Microsoft Azure DevOps to synchronize BMC Helix ITSM incidents with Azure DevOps work items. With this integration, your agents can consolidate the Azure DevOps work items into BMC Helix ITSM, and also broker BMC Helix ITSM incidents to Azure DevOps.
BMC Helix Multi-Cloud Broker, along with BMC Helix iPaaS, powered by MuleSoft, provides an out-of-the-box integration template that you use to integrate BMC Helix ITSM with Azure DevOps. You configure the integration in BMC Helix Multi-Cloud Broker and deploy the integration template to the BMC Helix iPaaS, powered by MuleSoft environment.
This integration provides the following capabilities:
Use work item | Incident brokering capabilities | Ticket consolidation capabilities |
---|---|---|
Create tickets | Create a work item in Azure DevOps for an incident created in BMC Helix ITSM. | Create an incident in BMC Helix ITSM for a work item created in Azure DevOps. |
Synchronize comments | Create comments in an Azure DevOps work item from a worklog in a BMC Helix ITSM incident with attachments. | Create worklogs in BMC Helix ITSM incident from an Azure DevOps work item comment with attachments. |
Synchronize updates | Update configured field values in an Azure DevOps work item from updates in the BMC Helix ITSM incident. | Update configured field values in the BMC Helix ITSM incident from an Azure DevOps work item. |
The following image gives an overview of the capabilities that this integration supports:
Before you begin
Make sure you have the following items:
Access to MuleSoft Anypoint Platform.
- Administrator access to BMC Helix Innovation Studio, BMC Helix Multi-Cloud Broker, and BMC Helix ITSM to run this integration.
- Administrator access to the Azure DevOps account and the Azure DevOps Personal Access token.
- Process setting for the project is set to Agile.
- Access to the Azure DevOps organization.
- Basic Access to the Azure DevOps project.
The Sync BMC Helix ITSM incident and Azure Devops workitem 2022-03-01
project file downloaded to your system from the BMC Helix Multi-Cloud Broker page on the Electronic Product Distribution site.
- The Microsoft Azure DevOps webhooks created one at a time.
- All the BMC Helix Multi-Cloud Broker webhooks created at once or one webhook created at a time.
BMC Helix ITSM to Azure DevOps flow
Azure DevOps to BMC Helix ITSM flow
Task 1: To configure the integration
- Log in to BMC Helix Innovation Studio.
- On Workspace, click Multi-Cloud Broker.
To launch BMC Helix Multi-Cloud Broker, click Visit Deployed Application.
- Click Settings .
- Select Start Here > Quick Configuration Guide.
The Quick Configuration Guide page is displayed. - On the Step 1: Choose configuration tab, perform the following steps:
- From the Choose configuration list, select Helix iPaaS (powered by MuleSoft).
- Under DevOps Integration, select Between ITSM Incident and Microsoft Azure DevOps.
- In the Step 2: Perform configurations tab, perform the following steps:
- Add an operating organization, if you have not already done so.
- Add Azure DevOps as the vendor organization, if you have not already done so.
- To add vendor metadata for Azure DevOps, click Map vendors, and perform the following steps:
- On the Map Vendors page, click Map Vendor.
Complete the fields as described in the following table:
Field
Action
Description
Enter a description for the Azure DevOps vendor metadata configuration.
Ticketing Technology Provider
From the list, select Azure DevOps.
(Optional) Instance Name
If you are using multiple instances of Azure DevOps, enter the instance name that you are using to identify it.
Add Mapping
After you select the ticketing technology provider, click Add Mapping. BMC Helix Multi-Cloud Broker displays the default values in the Instance URL field and the Display Field Mapping section.
InstanceURL
If you have clicked Add Mapping, this field is auto-populated. Update the URL and replace the Azure DevOps server with the correct host name.
Vendor Field Mapping
Do not update the default mappings.
Display Field Mapping
By default, the basic Azure DevOps fields are mapped in this section. If you want to map additional fields to be displayed in the BMC Helix ITSM UI, add the relevant mappings by clicking
.Enable Local ITSM Communication
By default, this toggle key is enabled.
If you want to use BMC Helix Integration Service as the underlying integration platform, disable this toggle key.
Resolve Incident Ticket When Vendor Closes It
By default, this toggle key is enabled so that when a Azure DevOps work item is closed, the corresponding BMC Helix ITSM incident is also closed. You can disable the toggle key, if required.
Integration Platform
From the list, select MuleSoft.
- Click Save.
- To fetch incidents from BMC Helix ITSM, click Define filter criteria to fetch records from ITSM to Helix Multi-Cloud Broker for incident, and perform the following steps:
- From the Select trigger event for incident list, select the operation for which you want to fetch the incidents.
In Advanced filter, define a filter criteria for the operation you selected, as describer in the following table:
Trigger event
Filter criteria
Created
Select any value from the Advanced filter list.; for example, as shown in the following image:
Updated
Enter Broker Vendor Name: Azure DevOps.
Important: If you have selected multiple integration features in step 6b, you can add multiple values in the filter criteria for the update event; for example, Broker Vendor Name: Azure DevOps, JIRA.
- Click Save.
When an incident matches the operation and filter that you have selected, the system fetches that incident and sends it to BMC Helix Multi-Cloud Broker.
- In the Configure Azure DevOps integration section, refer the configuration steps that are listed and select the check boxes as you complete each step.
- Click Save.
Task 2: To deploy the integration template project
- Log in to MuleSoft Anypoint Platform and select Runtime Manager.
- On the Applications tab, click Deploy application and select the .jar file that you downloaded.
On the Deploy Application page, on the Runtime tab, select the following values in the fields displayed:
Field name
Value
Application Name
Unique name for your application
Deployment Target
Deployment space
Application File
Integration template .jar file
Runtime tab
Runtime version
Latest runtime version
Work size
Available core sizes for your application
Workers
Number of dedicated instances of Mule for the application
On the Deploy Application page, on the Properties tab, add the following values in the keys displayed:
Key
Action
Anypoint Studio properties
anypoint.platform.config.analytics.agent.enabled
By default, the value of this key is false. It is used to enable or disable Anypoint Platform analytics data.
Kafka properties
kafka.use
By default, the value of this key is false. It is used to enable or disable the Kafka messaging system to handle the incoming webhook payload.
MuleSoft API webhook properties
api.integrations.name
Enter the name of the API that is created in BMC Helix iPaaS, powered by MuleSoft to receive BMC Helix Multi-Cloud Broker webhook requests.
Use the following syntax to enter the API name:
BHIP_<APIName>
For example, BHIP_CreateIncident.
api.integrations.profile.username
Enter the user name for the Basic type of authentication to configure the webhook.
api.integrations.profile.password
Enter the password for the user name that you provided earlier.
Microsoft Azure DevOps properties
vendor.connector.url
Enter the Azure DevOps instance URL in the following format: [http/https]://[host name and port]/services/Soap/u/[version number].
vendor.connector.api.version
Enter the Azure DevOps API version. The template supports Azure DevOps API versions 5.0 and later.
vendor.connector.project
Enter the name of the Azure DevOps project, where the work items should be created.
vendor.connector.personal.access.token
Enter the personal access token for Azure DevOps if the user requires it.
vendor.connector.protocol
Enter HTTPS
vendor.property.project.key
Enter the project key of the Azure DevOps project, where the work items should be created.
vendor.property.webhook.name
Enter the name to be used for the Azure DevOps webhook being created; for example, 'Escalated'.
BMC Helix Multi-Cloud Broker properties
mcb.connector.protocol
Enter HTTP or HTTPS.
mcb.connector.url
Enter the BMC Helix Multi-Cloud Broker URL to which the Azure DevOps work items should be synchronized.
mcb.connector.username
Enter the user name that enables users to interact with BMC Helix Multi-Cloud Broker.
mcb.connector.password
Enter the password for the provided user name.
mcb.property.vendor
Enter the AzureDevOps. This is the vendor name configured in the Map Vendor section in BMC Helix Multi-Cloud Broker.
BMC Helix ITSM properties
itsm.property.company.name
Enter the company name for which the integration template needs to be run; for example, Calbro Services.
itsm.property.first.name
Enter the first name of the BMC Helix ITSM customer.
itsm.property.last.name
Enter the last name of the BMC Helix ITSM customer.
itsm.property.incident.type
Enter any of the following incident types that you want to create for the corresponding work item:
- User Service Restoration
- User Service Request
- Infrastructure Restoration
- Infrastructure Event
- Security Incident
Email properties
email.property.smtp
Enter the SMTP server details in the following format: [SMTP Server>[:<SMTP Port>]
email.property.sender
Enter the email address from which you want to send the emails.
email.property.recepients
Enter the email address of the user to whom you want to send the emails. You can add multiple email addresses by using comma separated values, for example, allen@calbro.com, mary@abc.com.
- Click Deploy Application.
While the application is being deployed, the log updates are displayed. After the application is successfully deployed, a green circle is displayed next to the template name.
(Optional) Task 3: To verify and update field mappings defined for the template
- After you deploy the application in MuleSoft Anypoint Platform, export the project.
- Log in to MuleSoft Anypoint Studio and import the project.
- Select projectName > src/main/resources > config.
- Double-click the mule-mappings.yaml file, update the <app>Field value to modify the mapping for the field, and then save the file.
- Select the project name and then select File > Export.
- On the Select dialog box, select Mule > Anypoint Studio Project to Mule Deployable Archive (includes Studio metadata), and click Next.
- On the Export Mule Project dialog box, click the ellipses (...) and select the location and name for the file.
- Select the following options:
- Attach project sources
- Include project modules and dependencies
- Click Finish.
- Deploy the application on the MuleSoft Anypoint platform.
Task 4: To enable the integration
To enable the integrations, you need to run the webhook creation scripts from your MuleSoft Anypoint Platform. These scripts automatically create the required webhooks for the integration.
- On the application details page, click Schedules.
From the following list, select an appropriate schedule and click Run Now:
Schedule
Description
Schedules for create operations from BMC Helix ITSM to Azure DevOps
MCB-Create-Integration-Create-VendorTicket_Manual Trigger
Create the required webhooks to enable creation of work items in Azure DevOps for incidents created in BMC Helix ITSM.
MCB-Create-Integration-Tag-VendorTicket_Manual Trigger
Create the required webhooks to enable tagging the Azure DevOps work item with the BMC Helix ITSM incident details.
MCB-Create-Integration-Create-VendorWorklog_Manual Trigger
Create the required webhooks to enable creation of Azure DevOps work items for incidents created in BMC Helix ITSM.
MCB-Create-Integration-Update-VendorTicket_Manual Trigger
Create required webhooks to enable updating the fields in Azure DevOps work items with changes made in BMC Helix ITSM incident.
Schedules for pause operations from BMC Helix ITSM to Azure DevOps
MCB-Pause-Integration-Create-VendorTicket_Manual Trigger
Pause the webhooks defined to enable creation of Azure DevOps work items for incidents created in BMC Helix ITSM.
MCB-Pause-Integration-Create-VendorWorklog_Manual Trigger
Pause the webhooks defined to enable creation of worklogs in Azure DevOps for comments added in the BMC Helix ITSM incident.
MCB-Pause-Integration-Tag-VendorTicket_Manual Trigger
Pause the webhooks defined to enable tagging the Azure DevOps work item with the BMC Helix ITSM incident details.
MCB-Pause-Integration-Update-VendorTicket_Manual Trigger
Purge the existing webhooks defined to enable updating Azure DevOps work items with changes made in BMC Helix ITSM incident.
Schedules for resume operations from BMC Helix ITSM to Azure DevOps
MCB-Resume-Integration-Create-VendorTicket_Manual Trigger
Resume the webhooks defined to enable creation of Azure DevOps work items for incidents created in BMC Helix ITSM.
MCB-Resume-Integration-Create-VendorWorklog_Manual Trigger
Resume the webhooks defined to enable creation of worklogs in Azure DevOps for comments added in the BMC Helix ITSM incident.
MCB-Resume-Integration-Tag-VendorTicket_Manual Trigger
Resume the webhooks defined to enable tagging the Azure DevOps work item with the BMC Helix ITSM incident details.
MCB-Resume-Integration-Update-VendorTicket_Manual Trigger
Resume the webhooks defined to enable updating the fields in Azure DevOps work item with changes made to the incidents in BMC Helix ITSM.
Schedules for purge operations from BMC Helix ITSM to Azure DevOps
MCB-Purge-Integration-Create-VendorTicket_Manual Trigger
Purge the existing webhooks defined to enable creation of Azure DevOps work items for incidents created in BMC Helix ITSM.
MCB-Purge-Integration-Create-VendorWorklog_Manual Trigger
Purge the existing webhooks defined to enable creation of worklogs in Azure DevOps for comments added in the BMC Helix ITSM incident.
MCB-Purge-Integration-Update-VendorTicket_Manual Trigger
Purge the existing webhooks defined to enable updating the fields in Azure DevOps work items with changes made in BMC Helix ITSM incident.
MCB-Purge-Integration-Tag-VendorTicket_Manual Trigger
Purge the existing webhooks defined to enable tagging the Azure DevOps work item with the BMC Helix ITSM incident details.
Schedules for create operations from Azure DevOps to BMC Helix ITSM
AzureDevops-Create-Integration-Update-WorkItem_Manual Trigger
Create the required webhooks to enable creation of incidents in BMC Helix ITSM for work items created in Azure DevOps.
Schedules for purge operations from Azure DevOps to BMC Helix ITSM
AzureDevops-Purge-Integration-Create-Issue-WorkItem_Manual Trigger
Purge existing webhooks defined to enable creation of incidents in BMC Helix ITSM for work items created in Azure DevOps.
AzureDevops-Purge-Integration-Update-Issue-And-Comment-Create-sample_Manual Trigger
Purge existing webhooks defined to enable updating the fields in BMC Helix ITSM with changes made to the work item fields in Azure DevOps.
Synchronization between BMC Helix ITSM inidents and Azure DevOps work items is enabled for the selected schedules.
Related topics
Leveraging-integration-technologies-to-integrate-BMC-Helix-ITSM-and-third-party-applications