ChatOps integrations
This section provides instructions for integrating a ChatOps application, such as Slack or Microsoft Teams with ALM Octane. The integration enables all stakeholders to collaborate and communicate.
Set up a Slack integration
To set up integration with Slack, you add your ALM Octane workspace to a Slack workspace. This enables users to open Slack channels for discussions from within ALM Octane items, allowing stakeholders of backlog items or pipeline run failures to communicate. For details, see Collaborate.
If you configure the integration to expose ALM Octane data on Slack channels, information from the backlog item is sent to the channel.
Note: You can add your ALM Octane workspace to only one Slack workspace.
We recommend using different Slack workspaces for different ALM Octane workspaces.
To enable your ALM Octane workspace users to collaborate in Slack, define Slack as a collaboration tool in ALM Octane, and add your ALM Octane workspace to your Slack workspace:
-
Prerequisite Create a Slack app for ALM Octane to use. For details, see Create a Slack app for on-premises deployments.
-
In ALM Octane's Settings > Spaces, select your workspace.
-
Click the DevOps tab. On the left side of the pane, select Collaboration Tools.
-
Click + to add Slack as a collaboration tool. The Add Collaboration Tool dialog box opens.
-
In Slack, make sure you have a workspace to use for all communication related to this ALM Octane workspace. Add all of your ALM Octane workspace members to the Slack workspace.
If you do not have such a workspace, click the link in the Add Collaboration Tool dialog box to open Slack and create a workspace.
-
When creating a new Slack workspace, make sure to use an email address that you can access. Slack sends a confirmation code to this address as part of the process.
You can use the same email address to create different Slack workspaces.
-
You can add members to the Slack workspace at any time.
When you finish creating the Slack workspace, go back to the ALM Octane browser tab.
-
-
Consider carefully whether to allow exposing internal ALM Octane information on the Slack channel.
If you select the checkbox for this option in the Add Collaboration Tool dialog box, ALM Octane sends information about the relevant backlog items to the Slack channels it opens.
Note: You can modify this setting at any time in the collaboration tool grid.
-
Click Add to Slack to add your ALM Octane workspace to the Slack workspace.
The ALM Octane chat application registered on Slack requests access to your Slack workspace.
For SaaS ALM Octane, the name of the application is octanechatsapp. For on-premises ALM Octane, the application is set up by your site admin.
-
Optionally, select a different Slack workspace and select whether to expose more or less information about your Slack workspace to ALM Octane.
-
Click Authorize.
The integration with Slack is complete. The Chat w/ Slack button is now enabled in backlog items and in a pipeline run's Tests tab.
Troubleshooting: If the integration setup fails due to a communication failure, reporting an inaccessible redirect_url
, contact your site admin to make sure that the configuration parameter SERVER_BASE_URL is defined correctly. For details, see Configuration parameters.
Create a Slack app for on-premises deployments
To enable configuring Slack integration on your ALM Octane site, the site admin creates a Slack app and configures ALM Octane to use it:
To create a Slack app for ALM Octane:
-
Using a Slack account that belongs to ALM Octane's site admin, create a new Slack app for ALM Octane to use.
A single Slack application can serve many ALM Octane instances. For detailed instructions, refer to the Slack API documentation.
-
Complete the new Slack app's configuration and activate distribution:
-
In Add features and Functionality, click Permissions and select any permission scope. ALM Octane does not rely on this configuration.
-
In Manage Distribution, click Distribute App and configure sharing your app with other workspaces. Add an OAuth Redirect URL with ALM Octane's URL.
Add the URL in the following format (port number is optional) and click Save URLs:
http://<ALM Octane hostname / IP address> {:<port number>}/internal-api
For example, http://myServer.myCompany.com:8081/internal-api
-
In Remove Hard Coded Information, select the check box.
-
Click the button to activate distribution.
-
At https://api.slack.com/apps, make sure the app's distribution status is Distribution activated.
-
-
Provide ALM Octane with the credentials required for working on behalf of the Slack app you created.
-
In the Slack app's Basic Information > App Credentials area, locate the Client ID and Client Secret.
-
Enter the client ID and secret values respectively into the ALM Octane configuration parameters: SLACK_INTEGRATION_CLIENT_ID, SLACK_INTEGRATION_SECRET.
For details, see Configuration parameters.
-
Prepare for a Microsoft Teams integration
To prepare your system to integrate with Microsoft Teams, you need to register the Teams app in Azure, and perform steps in ALM Octane. Registering Teams in Azure establishes a trust relationship between your application and the identity provider, the Microsoft identity platform. For more details, refer to the Azure documentation.
The integration with Microsoft Teams lets you send comments to a specific Teams channel.
To register Teams in Azure:
-
Open the Azure portal via the organization's account: https://portal.azure.com/.
- Log in as a tenant admin. This will allow you to grant consent for the permissions that will be required later.
-
Open the Active Directory service.
- In the navigation side pane, click App registrations, and click New application registration.
- In the App > Authentication section, create a redirect URI to:
https://<server_base_url>/api/msteams-integration/auth-code
. -
In the App > API permissions section, grant the following Microsoft Graph API delegated permissions:
Group.Read.All User.ReadBasic.All Team.ReadBasic.All ChannelMessage.Send offline_access
.Note: If you skip this step, you can provide consent to these permissions upon your login.
- Create a client secret for your app in the App > Certificates & Secrets section.
- Save the client secret. You will need it to enable the integration.
Configure ALM Octane for Microsoft Teams integration
To enable your ALM Octane workspace users to collaborate in Microsoft Teams, you need to define it in the Collaboration Tools section.
To add Microsoft Teams as a collaboration tool:
- ALM Octane needs to be configured to run in HTTPS in order to support the Microsoft Teams integration. In Admin Settings > Site > Parameters, make sure that the SERVER_BASE_URL parameter matches your ALM Octane URL.In ALM Octane's Settings > Spaces, select your workspace.
-
Click the DevOps tab. In the left pane, select Collaboration Tools.
- In the tool dropdown, select Microsoft Teams if it is not already selected. Click + Microsoft Teams. ALM Octane prompts you to set up the integration.
- Enter the required credentials: Application (client) ID, Directory (tenant) ID, and client secret. Click Configure. The credentials can be found in the Azure portal.
- Exit the admin settings section, and make sure you are logged in to ALM Octane as an admin.
- Go to any work item entity and click the Discuss on Teams button . ALM Octane prompts you to provide consent for the requested permissions.
- Select the Consent on behalf of your organization checkbox and click Login. ALM Octane will authenticate on behalf of your Microsoft users through the application that you created.
Non-admin users can collaborate in Microsoft Teams from within ALM Octane. For details, see Discuss on Microsoft Teams.