Quick Info
Description
GitHub is a Git repository hosting service. It provides tools to manage artifacts on the Git repository. The GitHub plug-in imports Git artifacts based on queries for issues, commits and pull requests.Quick Info
ucv-ext-github:1.4.5.tar
Uploaded: 05-Jun-2023 08:31
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.4.5
Release Notes
Note - This feature is only supported in Accelerate versions 4.0.11 or above .
ucv-ext-github:1.3.46.tar
Uploaded: 09-May-2023 19:05
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.3.46
Release Notes
ucv-ext-github:1.3.35.tar
Uploaded: 26-Oct-2022 06:38
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.3.35
Release Notes
- Minor Enhancements
ucv-ext-github:1.3.34.tar
Uploaded: 25-Oct-2022 16:42
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.3.34
Release Notes
ucv-ext-github:1.3.31.tar
Uploaded: 31-May-2022 07:19
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.3.31
Release Notes
ucv-ext-github:1.3.29.tar
Uploaded: 22-Apr-2022 11:38
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.3.29
Release Notes
ucv-ext-github:1.2.25.tar
Uploaded: 28-Feb-2022 16:38
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.2.25
Release Notes
ucv-ext-github:1.2.24.tar
Uploaded: 28-Jan-2022 15:02
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.2.24
Release Notes
ucv-ext-github:1.1.22.tar
Uploaded: 03-Dec-2021 06:23
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.1.22
Release Notes
ucv-ext-github:1.1.20.tar
Uploaded: 19-Aug-2021 12:38
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.1.20
Release Notes
ucv-ext-github:1.1.18.tar
Uploaded: 11-Aug-2021 07:01
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.1.18
Release Notes
ucv-ext-github:1.1.15.tar
Uploaded: 23-Jul-2021 12:13
Pull Command
docker pull hclcr.io/accelerate/ucv-ext-github:1.1.15
Release Notes
Summary
The GitHub plugin provides for integration with a GitHub server. This plugin imports issues, pull requests, and commit data from a GitHub server and saves them as HCL Accelerate issues. Data between the GitHub server and the HCL Accelerate server is synchronized every five minutes.
Compatibility
This plugin supports Cloud and On-Premises platform
Upgrade notes
Beginning with HCL Accelerate version 2.4.0 users must enter a user access key is required to connect with the HCL Accelerate server. If you are upgrading from a previous version, you must obtain and add the key to the HCL Accelerate User Access Key configuration property. If the user access key is not added, the integration fails.
History
The following table describes the changes made in each plugin version.
Version | Description |
---|---|
1.2.25 | Global field for Initial Sync Date added to hidden properties (HCL Accelerate version 3.0.4 and later). |
1.2.24 | Primary and secondary API rate limit fix. Labels Updated. Additional branch error fix. Wildcard functionality added. Initail sync date added. Debug logs added. |
1.1.18 | ReSync support added (support starts with HCL Accelerate version 2.4.4 or later). Auto-generated User Access Key support added (support starts with HCL Accelerate version 2.4.0 or later). |
1.1.1 | Added support to pull commits from additional branches |
1.0.42 | Minor updates |
1.0.40 | Import GitHub issues |
Usage
To use the GitHub 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 GitHub plugin supports scheduled events integration which are listed in the following table.
Name | Description |
---|---|
syncGithubIssuesEvent | Queries the GitHub repository for issues. |
syncGithubCommitsEvent | Queries the GitHub repository for commits. |
syncGithubPullRequestsEvent | Queries the GitHub repository for pull requests. |
Integration
There are two methods to integrate the plugin:
- Using the user interface
- Using a JSON file
The tables in the Configuration properties topic describe the properties used to define the integration.
Using the user interface
- From the Plugins page, click Settings > Integrations > Plugins.
- Under the Action column for the plugin, click Add Integration.
- On the Add Integration page enter values for the fields used to configure the integration and define communication.
- 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 plugin properties can be defined.
- From a value stream page, download the value stream map. The value stream map is a JSON file used to define integrations.
- Edit the JSON file to include the plugin configuration properties.
- Save and upload the JSON file. This replaces the current JSON file with the new content.
- View the new integration on the Integrations page.
Minimum permission to integrate with GitHub
The access token generated from GitHub server requires the Full control of private repositories permission to connect to the Github.
Wildcard Functionality added in this Plugin:
Wildcard functionality: A new way to specify multiple repositories in the GitHub plugin without having to manually modify the integration each time. Regular expressions would be most valuable and dynamic. Example: ucv-ext-*, repo-name*, *repo*-abc. to specify multiple repositories which containe the same pattern in their name.
Previouly: Must list every plugin manually to be imported. Example: ucv-ext-jira, ucv-ext-appscan, ucv-ext-sonarqube
With this functionality : Single regex will import all repositories. Example: ucv-ext-*.
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 plugin integrations.
- The GitHub Configuration Properties table describes the GitHub configuration properties that define the connection and communications with the GitHub server.
Some properties might not be displayed in the user interface, to see all properties enable the Show Hidden Properties field.
Name | Description | Required | Property Name |
---|---|---|---|
NA | The version of the plugin that you want to use. To view available versions, click the Version History tab. If a value is not specified, the latest version is used. | No | image |
Integration Name | An assigned name to the value stream. | 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 configuration properties used to connect and communicate with the GitHub server. Enclose the properties within braces. | Yes | properties |
The name of the tenant. | Yes | tenant_id | |
NA | Unique identifier assigned to the plugin. The value for the GitHub plugin is ucv-ext-github |
Yes | type |
HCL Accelerate User Access Key | An auto-generated user access key provides credentials for communicating with the HCL Accelerate server. | Yes | NA |
Name | Type | Description | Required |
---|---|---|---|
API URL | String | The URL to the REST API v3 for the GitHub instance. | Yes |
Owner | String | The owner name of the GitHub repository. | Yes |
Repositories | Array | Comma seperated list of Github Repository names (separated by comma). Regular expression is enabled (Example: ucv-ext-*, repo-name*, *repo*-abc) | Yes |
branch | String | GitHub repositories branch, The branch to pull commits from. | No |
Token | String | The token to use to authenticate with the GitHub repository. | No |
Additional branches | Array | Comma seperated additional branches to collect commits from besides the main one, leave blank if not needed. | No |
Proxy Server | String | The URL of the proxy server including the port number. | No |
Proxy User Name | String | The user name used to authenticate with the proxy server. | No |
Proxy Password | String | The password used to authenticate with the proxy server. | No |
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-github",
"tenant_id":"tenant-id",
"name":"github-integration-name",
"properties":{
"owner":"owner-name",
"repositories":[
"repo1",
"repo2",
"repo3"
],
"apiUrl":"github-api-url",
"token":"generated-token",
"ucvAccessKey":"generated-access-key",
"proxyServer": "proxy_server_url",
"proxyUsername": "proxy_server_user_name",
"proxyPassword": "proxy_server_password"
}
}
]