Description

CircleCI is a modern continuous integration and continuous delivery (CI/CD) platform. CircleCI automates build, test, and deployment of software.

The CircleCI plug-in imports CI/CD data from CircleCI.

Quick Info

Product
HCL Accelerate
Type
plugin
Compatibility
HCL Accelerate version 2.2.0 or later
Created by
HCL Software
Website
Version Name Action

1.0.13

ucv-ext-circleci:1.0.13.tar

1.0.3

ucv-ext-circleci:1.0.3.tar

1.0.6

ucv-ext-circleci:1.0.6.tar

ucv-ext-circleci:1.0.13.tar

1.0.13


ucv-ext-circleci:1.0.3.tar

1.0.3


ucv-ext-circleci:1.0.6.tar

1.0.6


Summary

The CircleCI plugin for HCL Accelerate (beta) synchronizes pipelines, workflows and job executions of a CicleCI project with HCL Accelerate. The project can be configured as an application in an HCL Accelerate pipeline and CircleCI jobs can be configured in the HCL Accelerate pipeline. The Accelerate Pipeline displays the latest version of the application deployed to the different environments.

Compatibility

The CircleCI plug-in requires HCL Accelerate version 2.2.0 and later.

Currently, this plug-in does not support deployments to CircleCI from Accelerate. 

Usage

To use the CircleCI plugin, the plugin must be loaded and an instance created before you can configure the plugin integration. You define configuration properties in the user interface or in a JSON file.

Integration type

The CircleCI plugin supports scheduled events integration which are listed in the following table.

Scheduled events
Name Description
SyncCCPipeline Synchronize CircleCI pipeline data

Integration

There are two methods to integrate the plug-in:

  • Using the user interface
  • Using a JSON file

Using the user interface

  1. From the Plugins page, click Settings > Integrations > Plugins.
  2. Under the Action column for the plug-in, click Add Integration.
  3. On the Add Integration page enter values for the fields used to configure the integration and define communication.
  4. Click Save.

Using a JSON file

The JSON file contains the information for creating a value stream. Within the JSON file is a section for integrations. It is in this section that plug-in properties can be defined.

  1. From a value stream page, download the value stream map. The value stream map is a JSON file used to define integrations.
  2. Edit the JSON file to include the plug-in configuration properties.
  3. Save and upload the JSON file. This replaces the current JSON file with the new content.
  4. View the new integration on the Integrations page.

Configuration Properties

The following tables describe the properties used to configure the integration. Each table contains the field name when using the user interface and the property name when using a JSON file.

  • The General Configuration Properties table describes configuration properties used by all plug-in integrations.
  • The CircleCI Configuration Properties table describes the configuration properties that define the connection and communications with the CircleCI server. When using the JSON method to integrate the plug-in these properties are coded within the properties configuration property.

Some properties might not be displayed in the user interface, to see all properties enable the Show Hidden Properties field.

General Configuration properties
Name Description Required Property Name
NA The version of the plug-in that you want to use. To view available versions, click the Version History tab. If a value is not specified, the version named latest is used. No image
Integration Name An assigned name to the integration. Yes name
Logging Level The level of Log4j messages to display in the log file. Valid values are: all, debug, info, warn, error, fatal, off, and trace. No loggingLevel
NA List of plug-in configuration properties used to connect and communicate with the CircleCI server. Enclose the properties within braces. Yes properties
The name of the tenant. Yes tenant_id
NA Unique identifier assigned to the plug-in. The value for the CircleCI plug-in is ucv-ext-circleci. Yes type
CircleCI Configuration Properties
Name Type Description Required Property Name
Access Token String The access token to authenticate with CircleCI. Yes accessToken
Repositories Array A list of repositories from which to import pull requests, commits, and build data. Yes repositories
Proxy Server String The URL of the proxy server including the port number. No proxyServer
Proxy User Name String The user name used to authenticate with the proxy server. No proxyUsername
Proxy Password String The password used to authenticate with the proxy server. No proxyPassword
URL String API URL of CircleCI. Yes apiUrl
User Access Key String The user access key to authenticate with the HCL Accelerate server. Yes accelerateAccessKey
Project type (VCS provider) String The Version Control System that is used, eg: github, bitbucket. Yes projectType
Organization Name String The username or organization name in the version control system. Yes orgName
Branch String The branch for which build data is to be synced. If nothing is specified, the default_branch of the project will be used. No branch

JSON code sample

The following sample code can be used as a template to define the integration within the JSON file for a value stream. Copy and paste the template into the JSON file Integration section and make the appropriate changes.


 "integrations": [
    {
      "type": "ucv-ext-circleci",
      "tenant_id": "tenantid",
      "name": "CircleCI_Plugin ",
      "properties": {
        "apiUrl": "circleci_server_url",
        "accelerateAccessKey": "accelerate_access_key",
        "accessToken": "circleci_access_token",
        "projectType": "circleci_projct_type",
        "orgName": "circleci_org_name",
        "repositories": [
          "CiecleCI-Project"
        ],
        "proxyServer": "proxy_server_url",
        "proxyUsername": "proxy_server_user_name",
        "proxyPassword": "proxy_server_password"
      }
    }  ]