Set up CI servers
This topic describes how to set up the connection between ALM Octane and a CI server such as Jenkins or TeamCity. This is the basis for working with pipelines in ALM Octane and for integrating ALM Octane with UFT One.
- Caution:
-
The permission mechanism of ALM Octane is not synchronized with the permission mechanism of the CI server. Therefore, ALM Octane users may have access to information from the CI server that they would otherwise not be authorized to access, such as log files and stack traces.
-
We recommend that all ALM Octane integrations, and particularly CI server integrations, use the SSL protocol.
In this topic:
- Prerequisites
- Install the ALM Octane CI plugin on your CI server
- Add CI servers on ALM Octane
- Manage your CI servers
Prerequisites
Before you begin, prepare the following:
-
Obtain API Access. Ask your space admin for an API access Client ID and Client secret. The plugin uses these for authentication when communicating with ALM Octane.
The space admin can obtain the Client ID and Client secret in ALM Octane Settings. The access keys must be assigned the CI/CD Integration role in all relevant workspaces. For details, see Set up API access.
-
Obtain access to a CI server that meets the necessary requirements. For the CI servers that are supported by the ALM Octane CI plugins, see Support matrix.
Install the ALM Octane CI plugin on your CI server
Plugins enable ALM Octane to retrieve and display your CI server's build pipelines, synchronize test run results with the CI server, and trigger pipeline runs on the CI server.
Download, install, and configure the plugin that enables ALM Octane integration with your CI server. For details, see Install and configure the ALM Octane CI plugin on your CI server.
-
Plugins for Jenkins, TeamCity, Bamboo, Azure DevOps Server (TFS), and GoCD are available online.
-
For Jenkins, this functionality is part of the Application Automation Tools plugin.
For a list of plugins that must be installed on the Jenkins server to enable ALM Octane integration, as well as plugins that are supported by the ALM Octane integration but not required, see the Application Automation Tools wiki page or Jenkins integration.
-
For Azure DevOps Server 2019 and later, and Azure DevOps Services, there is an ALM Octane Integration Extension (technical preview) to integrate with ALM Octane.
-
For GitLab, there is a standalone application called ALM Octane GitLab CI service that uses the GitLab API to get events from GitLab and to push them to ALM Octane.
For other CI servers, build your own plugin in Java using the CI Plugin SDK for ALM Octane available on GitHub.
Add CI servers on ALM Octane
For ALM Octane to integrate with a CI server, the servers and their URLs must be added in ALM Octane.
-
In Settings
> Spaces, select a workspace.
-
Click the DevOps tab. On the left side of the pane, select CI Servers.
-
Click + to add a CI server and enter a name for the server.
-
Select a URL from the list of CI servers.
The list displays all servers that meet the following conditions:
-
The server has the ALM Octane CI plugin installed and configured to access your ALM Octane.
-
The API Access keys that the plugin is using are assigned the CI/CD Integration role in the current workspace.
-
You can now create pipelines in ALM Octane that reflect the ones running on the CI server.
Manage your CI servers
In the list of CI servers, you can add or remove CI servers, view information about each server, and suspend or resume the connection between ALM Octane and the CI server.
Open the list of CI servers
This list provides information about the servers' status, type, URL, and more.
-
In Settings
> Spaces, select a workspace.
-
Click the DevOps tab. On the left side of the pane, select CI Servers.
The list displays all servers that are set up with the ALM Octane CI plugin to access your ALM Octane.
-
Select the columns that you want displayed. For example, for each server, you can see:
-
Whether the server is currently connected.
-
The CI server type.
-
The version of the plugin installed on the server, or the SDK version used to develop the plugin.
Keep your plugin up-to-date to benefit from all the latest enhancements and functionality. If your SDK version is outdated, a red status icon is displayed, and functionality is impaired.
-
A link to the CI server's URL.
Tip: For this link to work properly, your CI server must have its Site URL properly configured.
-
Suspend and resume data transfer from Jenkins to ALM Octane
Instruct a selected CI server to stop sending information to ALM Octane. This includes information such as pipeline runs, test runs, SCM commits, and code coverage data.
A suspension may be useful, for example, in the following situations:
-
Your CI server is undergoing maintenance and you don't want experimental data to be sent to ALM Octane.
-
You are investigating unexpected behavior on your CI server and you want to isolate the server.
-
The network between your CI server and ALM Octane is going to be disconnected for maintenance and you want to reduce overload on the CI server during that time.
Next steps: