Install and configure the ALM Octane CI plugin on your CI server
When setting up a non-Jenkins CI server for ALM Octane for the first time, install the ALM Octane CI plugin on your CI server and configure it to connect to ALM Octane. For Jenkins, see Jenkins integration.
-
Plugins for Jenkins, TeamCity, Bamboo, Azure DevOps Server (TFS), and GoCD are available online.
-
For Azure DevOps Server 2019 and later, and Azure DevOps Services, there is an ALM Octane Integration Extension (technical preview) which can be obtained from Support.
-
For GitLab, there is a standalone GitLab service that integrates ALM Octane with GitLab.
In this topic:
- Plugin overview
- Prerequisites
- Install the plugin
- Configure the plugin to access ALM Octane
- Moving an existing CI server to a new address
Plugin overview
This plugin enables ALM Octane to integrate with a CI server, and provide the following abilities:
-
Retrieve and display the build pipelines that run on the CI server
-
Trigger pipeline runs on the CI server
-
Retrieve build run results, test run results, and commit information from the CI server
-
Retrieve code coverage reports from a Jenkins CI server
-
Trigger UFT One test execution on a Jenkins CI server
- Note:
- To integrate with Jenkins, do not install the ALM Octane CI plugin on the Jenkins server. For details, see Upgrading to the Micro Focus Application Automation Tool plugin.
- The Azure DevOps integration is currently one-directional. An Azure DevOps pipeline and its jobs can notify ALM Octane about their progress and status, as well as send information about the source control commits and test results relevant to them. However, running and stopping the pipeline from ALM Octane is not supported.
Prerequisites
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.
-
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.
-
Decide which CI server user ALM Octane will use to access the CI server and execute jobs. For Azure DevOps Server (TFS) this is the Personal Access Token (PAT).
The CI server user or PAT must have the following permissions:
On Bamboo: Build plan On Jenkins, for working with pipelines: Job Build On Jenkins, for ALM Octane-UFT One integration without pipelines:
Job Create, Delete, and Read
If your SCM repository requires credentials, Credentials create and update permissions are also required. This is so that ALM Octane can save the SCM access credentials you provide on the Jenkins server.
On Azure DevOps Server (TFS): Read permissions for: Build, Code, Project and team, Test management
Execute permissions for Build
On GoCD: View permissions, and permissions to run a pipeline. On Azure: No permissions are needed because ALM Octane does not access the Azure DevOps server, and does not actively execute any jobs. The integration is one-directional, from Azure DevOps to ALM Octane. Caution: We strongly recommend limiting this user’s permissions to the minimum required for this integration.
Install the plugin
Download the relevant plugin from the Internet and install it on your CI server. Do one of the following:
Jenkins |
In your Jenkins server's user interface, open the plugin management area and upload the plugin:
For further steps, see Jenkins integration. |
TeamCity |
In your TeamCity server's user interface, open the plugin management area and upload the plugin:
|
Bamboo |
In your Bamboo server's user interface, open the add on management area and upload the plugin:
|
Azure DevOps Server (TFS) |
Run the downloaded MSI on your Azure DevOps Server (TFS) machine to install the plugin. |
GoCD | Download the plugin's .jar file and store it on your GoCD server in <GoCD server folder>/plugins/external/. |
GitLab | Run the Java command line as described in ALM Octane GitLab CI service. |
Azure DevOps Server (2019 and later) Azure DevOps Services |
Within Azure:
For details refer to the extension's readme file. |
Before configuring the plugin to access ALM Octane, the plugin installation must be complete. Wait for the CI server to restart (Jenkins or TeamCity), refresh the add-on management page (Bamboo), or restart the CI server (Azure DevOps Server/TFS, GoCD).
Note:
- If you enable or disable the plugin at any time after installation, you must restart your CI server (Jenkins, TeamCity, Bamboo).
-
To update or reinstall the Azure DevOps Server (TFS) plugin, you must first stop the Azure DevOps Server (TFS) Windows service: Visual Studio Team Foundation Background Job Agent. Restart the service after the plugin is updated.
Configure the plugin to access ALM Octane
After you install the ALM Octane CI plugin on your CI server, configure the plugin to access ALM Octane and, if necessary, the CI server.
Tip: After installing the plugin and before configuring it, wait for the CI server to restart (Jenkins or TeamCity), refresh the add-on management page (Bamboo), or restart the CI server (Azure DevOps Server/TFS, GoCD).
-
Open the plugin's configuration area. Do one of the following:
Jenkins In your Jenkins server's user interface, locate the configuration area for the ALM Octane CI plugin:
-
Click Manage Jenkins (on the left).
-
Click Configure System.
-
Scroll down to the configuration area for the ALM Octane CI.
For additional information, see Jenkins integration.
TeamCity In your TeamCity server's user interface, locate the configuration area for the ALM Octane CI plugin:
- Go to Administration.
- Under Server Administration, click ALM Octane CI Plugin.
Bamboo In your Bamboo server's user interface, locate the configuration area for the ALM Octane CI plugin:
-
Click the Administration cogwheel button and select Add-ons from the menu.
-
In the left pane, click ALM Octane CI Plugin under COMMUNICATION.
Azure DevOps Server (TFS) On your Azure DevOps Server (TFS) machine, access the plugin's console:
- Go to http://localhost:4567.
- Click Configuration.
For more details, see the plugin's readme.
GoCD In your GoCD server's user interface, open Admin > Plugins.
Click the cogwheel displayed for the OctaneGoCDPlugin.
Azure DevOps Server (2019 and later)
Azure DevOps Services
In the target Azure DevOps project:
-
Create a new ALM Octane Service Connection. Provide the properties of your ALM Octane workspace: Connection name, URL, instance ID, shared space ID, workspace ID, API client ID and secret.
-
Set the pipeline variables InjectAlmOctaneTasks (true), and OctaneConnectionName (as entered above).
-
Add two jobs to your pipeline: AlmOctanePipelineStart which always runs at the pipeline beginning, and AlmOctanePipelineEnd which always waits until all other jobs finish.
For details refer to the plugin readme file.
Note: The following steps are not relevant for the Azure DevOps integration. The plugin readme provides comprehensive details on how to configure this integration.
-
-
Enter the following information:
Location The URL of the ALM Octane server, using its fully qualified domain name (FQDN). Use the following format (port number is optional):
http://<ALM Octane hostname / IP address> {:<port number>}/ui/?p=<space ID>
For example, in this URL the space ID is 1002: http://myServer.myCompany.com:8081/ui/?p=100
You can copy the URL from the address bar of the browser in which you opened ALM Octane.
Caution: When configuring an integration between on-premises and a CI server via plugin, although you are able to use non-secure HTTP for this connection, we strongly recommend that you use HTTPS to ensure login credentials are sent securely.
Client ID The API access Client ID that the plugin should use to connect to ALM Octane. For details, see prerequisites. Client secret The Client secret that the plugin should use to connect to ALM Octane. For details, see prerequisites. Jenkins / Bamboo / TeamCity user The CI server user account that will run jobs at ALM Octane's request.
This option is available only on Jenkins, Bamboo, and TeamCity.
Caution:
- Make sure the user exists in the CI server.
-
In Bamboo, you must specify a user.
In Jenkins and TeamCity, if you do not specify a user ALM Octane uses Anonymous, and is limited to Anonymous permissions.
Azure DevOps Server (TFS) location and PAT HTTP address and Personal Access Token for the plugin to use to access Azure DevOps Server (TFS). The permissions required for this PAT are specified above.
These options are available only on Azure DevOps Server (TFS).
GoCD API username and password The credentials for the plugin to use to access GoCD. -
Click Test Connection to validate the configuration, and then save your changes.
Moving an existing CI server to a new address
If your Bamboo or TeamCity CI server moves to a new location and you reinstall the plugin, you must re-create the CI server and its pipelines in ALM Octane.
If your GitLab server moves to another location, get the CI server instance ID using the following steps. Then, use the ciserver.identity property as described in ALM Octane GitLab CI service.
In Jenkins or Azure DevOps Server (TFS), if you move your server and reinstall the plugin, use the following steps to adjust the plugin's configuration and continue working with your existing pipelines.
Configure the Jenkins or Azure DevOps Server (TFS) plugin to work with existing ALM Octane pipelines
-
Get the plugin instance ID originally used to set up the CI server on ALM Octane:
-
In ALM Octane, in Settings
> Spaces, select a workspace.
-
Click the DevOps tab. On the left side of the pane, select CI servers.
-
In the grid, locate the Instance ID column and copy your CI server's Instance ID.
-
-
In Azure DevOps Server (TFS) or Jenkins, update the new plugin to use the original instance ID.
Jenkins In your Jenkins server's user interface:
-
Click Manage Plugins in the left pane.
-
Click Configure System.
-
Scroll down to the ALM Octane CI configuration area.
-
Click Show plugin instance ID.
-
In the Instance ID box, enter the Instance ID you copied from ALM Octane earlier.
Azure DevOps Server (TFS) - On the Azure DevOps Server (TFS) server, go to http://localhost:4567 to access the plugin's console.
- Click Configuration.
- In the Instance ID box, enter the Instance ID you copied from ALM Octane earlier.
For more details, see the plugin's readme.
-
Next steps: