Enabling prebuilt DevOps integration between Microsoft Azure DevOps and BMC Helix ITSM
Azure DevOps provides developer services to support teams to plan work, collaborate on code development, and build and deploy applications. Developers can work in the cloud using Azure DevOps Services. For more details about Azure DevOps, see the Azure DevOps documentation.
Important
Azure DevOps Server was earlier named Visual Studio Team Foundation Server (TFS).
BMC Helix Multi-Cloud Broker facilitates DevOps practices in organizations that use multiple tools. You can integrate BMC Helix Multi-Cloud Broker with Azure DevOps and manage tickets across multiple teams more effectively. For more information about DevOps integration, see DevOps integration.
Before you begin
Complete all preconfiguration tasks before you configure the integration.
To select the integration option for DevOps between Azure DevOps and ITSM
- Launch BMC Helix Platform by using the URL provided in the email sent to you from BMC, and log in as an administrator.
- From the list of applications, select Workspace > Applications > Multi-Cloud Service Management.
To launch BMC Helix Multi-Cloud Broker, on the top-right corner of the page, click Visit Deployed Application.
Tip
You can access BMC Helix Multi-Cloud Broker directly by entering the URL https://hostName:portNumber/innovationsuite/index.html#/com.bmc.dsm.mcsm and logging in as a tenant administrator.
- To open the configuration page, click Settings .
- Select Start Here > Quick Configuration Guide.
BMC Helix Multi-Cloud Broker lists the features available to you.
6. For the DevOps feature, under DevOps Integration, select the following features and click Done:
- Remedy Incident to Azure DevOps and Azure DevOps to Remedy Incident for ITSM incidents
- Azure DevOps to Remedy Change for ITSM change requests
The Configuration Links page displays a list of the common configurations, connectors, flows, and connector targets and processes that you need to configure as described in the next tasks.
To map Azure DevOps vendor data to ITSM or Smart IT
To configure vendor data content, you must set up a vendor organization and define vendor mappings for the technology provider. The Configuration Links page provides links to both options.
Important
BMC recommends that you set up the vendor organizations before starting the BMC Helix Multi-Cloud Broker configuration. For more information about adding vendor organizations, see Performing preconfiguration tasks.
On the Configuration Links page, to create or modify a vendor organization, under Configure Azure DevOps, click Manage Vendor Organization.
- On the Configuration Links page, to add or update the vendor mapping, under Configure Azure DevOps, click Map Vendors.
- Configure the vendor data.
On the Map Vendors screen, click
to open the Map New Vendor page.Enter a Description that makes it easy for you to identify the vendor metadata configuration.
Select Azure DevOps as the Ticketing Technology Provider.
The Ticketing Technology Provider is the application the vendor uses to manage tickets. For example, Ticketing Technology Provider for Microsoft is Azure DevOps.Click Add Mapping.
BMC Helix Multi-Cloud Broker displays the default Instance URL and Display Field Mapping.
- In the Instance URL, replace the values of
<organization>
and<project>
with the name of the Azure DevOps organization and the project within that organization that you want to integrate with. Click { } to open the JSON editor, and modify Display Field Mapping to add or delete values.
Display Field Mapping defines how vendor ticket fields map to the fields on the Smart IT console.
To configure connectors for integrating ITSM and Azure DevOps with BMC Helix Multi-Cloud Broker
For each feature you selected, complete the following procedure for the connectors listed on the Configuration Links page.
To navigate to BMC Helix Integration Service, on the Configuration Links page, click Configure connectors in Integration Studio under Required Common Configurations.
You must configure the connectors listed for each feature, in addition to the connectors listed under Required Common Configuration.To enter field values, select a connector, such as ITSM, and click Configuration.
You might need to click the arrow on the ribbon in the lower section of the screen to open the Configuration pane.- To update the configuration defaults, enter the appropriate field values by referring to the list of connectors at the end of this procedure.
- To add or update the user account that is used to access the vendor application, click Accounts.
List of connectors for integration with Azure DevOps
To configure flow triggers and field mappings between ITSM, BMC Helix Multi-Cloud Broker, and Azure DevOps
For each feature you selected, complete this procedure for the flows listed on the Configuration Links page.
To navigate to BMC Helix Integration Service, on the Configuration Links page, click Configure flows in Integration Studio under Required Common Configurations.
You need to configure the flows listed for each feature, in addition to the flows listed under Required Common Configuration.
To open the flow template page, on the Catalog tab in Integration Studio, click the flow you want to configure.
- To create a copy of the flow template, click
- Select the appropriate accounts for the end-point connectors of the selected flow.
You specify the connector accounts when configuring connectors. - To update the name of the flow that you have copied from the flow template, select My Flow, open the flow that you copied, and update the title.
Specify the trigger Conditions and Field mapping, and click OK.
For more information about trigger conditions and field mappings, see the list of flows at the end of this procedure.- Click My Flows and select the flow that you created from the flow template.
- To verify the target values for the trigger conditions and the field mappings, in the right pane, click Details.
List of flows for integration with Azure DevOps
Mapping between ITSM fields and custom fields created in Azure DevOps
To create a ITSM incident based on an Azure work item that includes a custom field, you must map the custom field with an ITSM field. When the fields are mapped, changes made to the custom field in the Azure DevOps work item are updated in Vendor Ticket details section of the ITSM incident ticket.
Important
When you map a custom field of type text, to ensure that the text displayed in the custom field does not contain any html symbols you must use the stripHtml function to transform the field in the flow mapping.
The following table lists the types of Azure DevOps fields you can configure:
- Text (single line or multiple line)
- Picklist (string or integer)
- Integer
- Decimal
- Date/Time
The configuration of single line or multiple line text fields and a picklist string is the same. To use date/time, integers, decimal, picklist (integers) fields, you must separately configure these fields in Smart IT. In Mid-Tier, they will be transferred to the previously created (and configured) ITSM fields.
To enable mapping custom Azure DevOps fields with ITSM fields:
- Create a custom field in your Azure DevOps project. For more information about creating a custom field in Azure DevOps see
Add a custom field to a work item type
in the Microsoft Azure documentation.
- Add a new field to the Ticket Brokering Library:
- Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
- Select Ticket Brokering Library > Records > Incident.
From the New field drop-down list, select the field type corresponding to the custom Azure DevOps field.
Azure DevOps field type Multi-Cloud field type Text (single line or multipl line) Text Picklist (string or integer) Selection Integer Integer Decimal Decimal Date/Time Date/Time Add the following properties to the new field:
Field name Value Name Enter a name for the custom field Allow Anyone to Submit Select
.For example, if you created a custom Date/Time field in Azure DevOps, create a new Date/Type field.
- Regenerate the schema for the Azure DevOps, ITSM, and Multi-Cloud connectors:
- Log in to BMC Helix Integration Service.
- Click Catalog.
- Click Connectors, and then select the connector from the list.
You might need to click the arrow on the ribbon in the lower section of the screen to open the Configuration pane. Under Custom Fields, click Regenerate in the Actions column.
- Refresh schema for the Create DevOps Incident and Create Azure DevOps Work Item flows, and add then add a mapping for the custom field.
- Log in to BMC Helix Integration Service.
- Click My Flows.
- Search for the flow and click the flow to open it.
From the Actions list, select Refresh Schema.
(Optional) To get the internal ID from Azure for your custom fields run the following commands:
Important
You must install a utility for non-interactive download of files like wget and then run the commands using the command line prompt.
Run
echo -n username:password| base64
to generate base64 encoded string for subsequent requests.Run
wget --no-check-certificate --header='X-Requested-With: XMLHttpRequest' --header='Authorization: Basic [base64 encoded username:password]' --output-document applications.json 'https://[host]/api/v1.0/apps/search?lower_case_name=[connector name]'
This command creates
applications.json
file that contains response from the BMC Helix Integration Service. Copy value from id field from the json file. This is application Id field that you can use in the next command. Find from the list of appConfig your configuration by name and copy value from Id field. This is configuration Id value that you can use in next command.Run
wget --no-check-certificate --header='X-Requested-With: XMLHttpRequest' --header='Authorization: Basic [base64 encoded username:password]' --output-document app_triggers.json 'https://[host]/api/v1.0/apps/[application Id]/configs/[configuration Id]/triggers'
This request creates
app_triggers.json
file with available triggers. Each trigger object contains a fields field that is an array of available fields. Copy value from systemName field. Use this value in step f.Run
wget --no-check-certificate --header='X-Requested-With: XMLHttpRequest' --header='Authorization: Basic [base64 encoded username:password]' --output-document app_actions.json 'https://[host]/api/v1.0/apps/[application Id]/configs/[configuration Id]/actions'
This request creates
app_actions.json
file with available actions. Each action object contains a fields field that is an array of available fields. Copy the value of systemName field. These fields can be used as Vendor field mapping properties.
Navigate to My Flows and select the Sync Jira Issue flow.
Log in to BMC Helix Integration Studio.
On the Details tab, click
.Select the Edit Field Mapping tab.
Important
For the Create Azure DevOps Work Item flow, select Multi-Cloud - Create Vendor Data Ticket.
In the Vendor Ticket Properties, click Add Property for each custom field that you want to use.
- Click Save and Close.
- To display the custom field, update the Display Mapping in the Azure DevOps vendor mapping.
- Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
- Select Multi-Cloud Service Management, and then click .
- Click Settings.
- Select Configure Vendors > Map Vendors > Azure DevOps.
- Click Edit.
- Click { } under Display Field Mapping
Under the Vendor Specific section, click Add row and enter details of the custom field.
Field name Value Name
Enter the name of the custom field.
Type
Select the field type of the custom field.
Label GUID
Enter the GUID as displayed in Azure DevOps.
Click Save.
When you complete the configuration for all the components, verify that the tickets are being brokered from ITSM to Azure DevOps and the converse.
Comments
Is there, or will there be, integration between Azure DevOps and Change Management?
Thank you for your question, Ida Perceval . Support for the integration between Azure DevOps and Change Management is planned in our next release. You can view the 20.02 enhancements preview page for an overview.
Regards,
Priya
The Azure DevOps - Change integration template is now available:
Creating change requests from Azure DevOps work items via BMC Helix iPaaS, powered by Jitterbit.
Hello, after long hours searching for an answer, this is the farther I got before crying for help... Regarding the previous question about Change Management and ADO Integration, is there a programmatic way from ADO to know whether a CRQ is approved and live (on-going)?
In my scenario I have deployment pipelines that I would like to validate that info and blocking the deployment when not satisfied.
Fernando Martull , thank you for your comment. I am checking with my development team to get some details on your query.
Hello Priya Shetye, have you been able to check it? Thanks in advance :-)
Hello Priya Shetye, do you have any news?
Log in or register to comment.