CloudBees CI and Jenkins integration

CloudBees Software Delivery Management is a preview, with early access for select preview members. Product features and documentation are frequently updated. If you find an issue or have a suggestion, please contact CloudBees Support. Learn more about the preview program.

You can integrate data from CloudBees CI, CloudBees Jenkins Platform, and Jenkins controllers to get visibility into all the jobs and events related to that product.

The Jenkins integration provides data for CI/CD performance. Once this integration is completed, you need to associate the jobs with one or more products using Manage jobs.

Requirements

To install a Jenkins integration, you must have:

  • Admin role on your CloudBees Software Delivery Management user profile for the organization.

  • Administrator rights on the Jenkins controller.

  • A Jenkins controller running a supported version of CloudBees CI, CloudBees Jenkins Platform, or Jenkins. Refer to Supported platforms for details.

Configuring the Jenkins integration

When setting up a Jenkins integration, you need to:

  1. Enable the Jenkins app in CloudBees Software Delivery Management.

  2. Create a refresh token.

  3. Enable the CloudBees Software Delivery Management app on the Jenkins controller.

Configuring the Jenkins app in CloudBees Software Delivery Management

This procedure requires CloudBees Software Delivery Management administrator rights.

To install the plugins and enable controller data in CloudBees Software Delivery Management:

  1. Select User profile  Organization settings.

  2. Select Engineering Efficiency  Apps.

  3. Select Jenkins, and then select Install app.

  4. Verify that you want to install and configure a connected controller, and then select Add.

Creating a refresh token

This procedure requires CloudBees Software Delivery Management administrator rights.

To create a refresh token:

  1. Sign in to app.cloudbees.com as an admin and select CloudBees Engineering Efficiency.

  2. Select User profile  Organization settings and then Engineering efficiency  Apps.

  3. Select the Jenkins app.

  4. Select the Security tokens tab.

  5. Select Create refresh token.

  6. Enter a token name and select Create token.

  7. Copy the long string of the token. Select Finish.

Next, you need to install the CloudBees Software Delivery Management app on a Jenkins controller.

Installing the CloudBees Software Delivery Management app on a controller

This procedure requires Jenkins administrator rights.

If you are using an open-source version of Jenkins, you need to install the CloudBees Installation plugin in addition to the CloudBees SDM plugin. This plugin is not required if you are using CloudBees CI, CloudBees Core, or CloudBees Jenkins Platform.

To install the CloudBees Software Delivery Management app on a Jenkins controller:

  1. Sign in to Jenkins as an admin.

  2. Select Manage Jenkins  Manage Plugins.

  3. Select the Available tab.

  4. For non-CloudBees Jenkins only: Search for CloudBees Installation. Select the checkbox next to the plugin name and select Install without restart. The Progress page displays during installation and notifies you if any dependencies also need to be installed or updated.

    If you are running CloudBees CI, CloudBees Core, or CloudBees Jenkins Platform, you do not need to install CloudBees Installation plugin and can move to the next step.
  5. Select Manage Jenkins  Manage Plugins.

  6. Select the Available tab.

  7. Search for CloudBees Software Delivery Management. Select the checkbox next to the plugin name and select Install without restart. The Progress page displays during installation and notifies you if any dependencies also need to be installed or updated. If a dependency needs to be updated, you will be prompted to restart Jenkins to complete the plugin installation.

  8. After the plugin installation is complete, go to Manage Jenkins. Scroll down to Security  Manage Credentials.

  9. Scroll to Stores scoped to Jenkins. Select (global) under Domains.

  10. Select Add Credentials on the left.

  11. Enter the following information in the fields:

    1. Kind: Select CloudBees SDM Refresh Token from the drop-down.

      If you do not see CloudBees SDM Refresh Token in the drop-down, make sure that it is enabled as a valid credential type in Manage Jenkins  Configure Credential Providers.
    2. Scope: Select System (Jenkins and nodes only) from the drop-down.

    3. URL: Accept the default, app.cloudbees.com.

    4. Token: Paste in the token received from CloudBees Software Delivery Management.

    5. ID: A case-sensitive identifier, like cloudbees-sdm, used to reference the credential from contexts other than the Jenkins UI, such as Configuration as Code plugin. Do not use spaces or special characters, except for a dash (-) and underscore (_). If you only configure credentials using the UI, you can leave this field blank and an ID will be automatically generated.

Configuration settings
  1. Description: Enter a description you want to appear in the UI.

  2. Select OK.

  3. Return to the Global credentials page (unrestricted). The new credential is at the bottom of the list.

    1. Select the controller name at the top of the page.

    2. Select Manage Jenkins and then System configuration  Configure System.

    3. Locate the CloudBees Software Delivery Management section on the page.

      Use Control-F to search within the page for CloudBees Software Delivery Management.
    4. Check the Send events box. The new credential is auto-populated with a message underneath that shows valid credentials.

    5. Select Save.

Viewing Jenkins controllers

You must install the Jenkins plugins first so CloudBees Software Delivery Management can use the data from the Jenkins controllers.

To view a list of connected Jenkins controllers:

  1. Select User profile  Organization settings.

  2. Select Engineering Efficiency  Apps.

  3. Select the Jenkins app.

  4. Select the Configuration tab.

Verifying that Jenkins data is sent

To verify that it is working or connected:

  1. Select Manage Jenkins from the Controller page.

  2. Select Status Information  CloudBees SDM.

This section shows the status of event forwarding to CloudBees Software Delivery Management. You can use this information to troubleshoot and evaluate any issues with the current status configuration. If an issue arises, a section displays an error message describing what to do.

The last section on this page shows the current status of communication between Jenkins and CloudBees Software Delivery Management. This is a good way to find out if the configuration is working properly.

The Event Schema page has even more details, including what data is collected.

Requesting data removal

Once data is imported into the System of Record, data will stay synchronized as part of normal operations as data changes. You can request to have data removed from your organization by contacting CloudBees support.