Create a DevOps tool integration
To create a DevOps tool integration, your integration developer configures DevOps tool integration settings, and a Workflow Studio subflow to collect and transform data from the source tool. Then your DevOps admin configures your DevOps tool connections.
Before you begin
Note: When creating an integration as a scoped app, the system admin must assign these roles to the integration developer so the integration developer is able to create tool integration and integration capability records for the specific scope.
- Developer role for the scoped app
- DevOps admin role
Role required: sn_devops.admin
About this task
Creating a DevOps tool integration procedure involves configuration by both your integration developer and your DevOps admin.
Your integration developer creates a tool integration record in DevOps, a Workflow Studio subflow, a tool capability mapping, and an integration capability record in DevOps to map the capabilities and actions together.
Note: Notification, connect, and discover capabilities are supported.
Your DevOps admin sets up DevOps connections (planning or coding tool), and configures the source tool with the webhook and credentials.
This procedure provides detailed steps to create your DevOps tool integration.
Procedure
Integration developer:
Configure the source tool integration capabilities and actions, and a subflow.
Navigate to DevOps > Integrations > Tool Integrations and create a record to define the tool you are integrating (source tool).
Note: Do not edit the tool integration records provided with the DevOps application.
| Tool label | Sample Code Tool |
| Table | Code Tool \[sn\_devops\_tool\] |
| Use packageable integrations | Selected |
| Integration version | 1.0 |
| Active | Selected |
2. Navigate to **Flow Designer** > **Designer** and [create a subflow](creating-dev-ops-subflows.md) to collect and transform data from the tool you are integrating \(source tool\).
**Note:** The **Run As** field must be set to System User, and the **Inputs** label must be set to current variable.
| Name | Code Tool Notification |
| Application | Sample Integration App |
| Accessible From | All application scopes |
| Description | Code tool for integration app |
| Run As | System User |
The subflow must contain Get More Data via API calls, and/or transform the original payload. Copy the transformed payload into the inbound events record.
**Note:** Do not edit the DevOps main flow.
3. Navigate to **DevOps** > **Integrations** > **Tool Capability Mappings** and create a record to map the tool integration record to the tool type capability.
| Tool integration | Sample tool |
| Tool type capability | Code |
4. Navigate to **DevOps** > **Integrations** > **Integration Capabilities** and create a record to specify the action for the tool capability mapping.
**Note:** Do not edit the integration capability records provided with the DevOps application.
| Tool integration | Sample Code Tool |
| Capability mapping | Sample Code Tool-Code Note: Do not edit tool type capability records. |
| Action | Notification Note: Do not edit tool action records. |
| Active | Selected |
| Timeout \(ms\) | Timeout for the corresponding subflow. If execution of the subflow exceeds this value, a timeout exception occurs. Value is in milliseconds \(ms\). Default is 45,000 \(45 seconds\). |
| Subflow name | x_snc_sample_integ.code_tool_notification The name is prefixed by the scope name and a dot (.) before the actual subflow name. For example, given:
Note: If the Subflow name field is left blank for a Notification capability, default handling of notifications occurs. |
| Domain | global |
DevOps admin:
Configure the connection from DevOps to the source tool.
The tool record must contain:
- Reference to the tool integration record created by the integration developer (in the Tool field)
- Tool label
- Connection alias (connection and credential)
- Copy the notification (webhook) created on the DevOps planning tool to the source tool service hook of the notification endpoint and set the credentials to devops.integration.user.
You can view the state of integration events in the Inbound Event list (DevOps > Administration > Inbound Events).
The inbound event record state is set to Processed once the object has been inserted into the DevOps Core table. Event states include New, In Progress, Processed, Unmatched, and Error.
If the tool integration record and the subflow are created in a different scope, the DevOps admin must create two new Cross scope privileges records to allow the app to access the inbound events table.
Navigate to System Applications > Application Cross-Scope Access and create read and write cross scope privileges records to allow your app to access the inbound events table.
Field Read Write Source Scope Auto populated based on the current application Target Scope DevOps Target Name sn_devops_inbound_event Target Type Table Operation Read Write Status Allowed
Parent Topic:User-created integrations in DevOps Change Velocity