Filters

Search Results ()

Search Results ()

    All Plugins (148)

    Quick Info

    Product
    HCL Accelerate
    Type
    plugin
    Compatibility
    HCL Accelerate version 2.0 or later
    Created by
    HCL Software
    Published Date
    March 8th, 2021
    Last Updated
    August 10th, 2022

    What’s New?

    An optional feature of pushing pipeline runs with predefined tags as builds to HCL Accelerate. Visit the Usage section in Documentation for more details.

    Description

    Azure DevOps (formerly Microsoft Team Foundation Server (TFS) or Microsoft TFS) provides services to manage end-to-end flow of a development project. It contains services to share code, track work, and ship software.

    Quick Info

    Product
    HCL Accelerate
    Type
    plugin
    Compatibility
    HCL Accelerate version 2.0 or later
    Created by
    HCL Software
    Published Date
    March 8th, 2021
    Last Updated
    August 10th, 2022

    ucv-ext-azure:4.0.29.tar

    Uploaded: 02-May-2022 15:50

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.29

    Release Notes

  • Optional feature of pushing pipeline runs with predefined tags as builds to HCL Accelerate
  • Bug fix related to build status
  • ucv-ext-azure:4.0.28.tar

    Uploaded: 08-Apr-2022 06:10

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.28

    Release Notes

  • Additional Branch field added
  • ucv-ext-azure:4.0.26.tar

    Uploaded: 08-Mar-2022 13:09

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.26

    Release Notes

  • Auto generated User Access Key Related Changes.(For accelerate version 3.0.0 we started supporting auto generated user access key. For version prior to 3.0.0 manually add user access key in the hidden field.)
  • ucv-ext-azure:4.0.16.tar

    Uploaded: 03-Dec-2021 13:10

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.16

    Release Notes

  • UAK Changes
  • ucv-ext-azure:4.0.15.tar

    Uploaded: 01-Dec-2021 16:18

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.15

    Release Notes

  • Adding Logger and ucv functionality
  • ucv-ext-azure:4.0.3.tar

    Uploaded: 30-Sep-2021 05:32

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.3

    Release Notes

  • Resync data feature added
  • ucv-ext-azure:4.0.1.tar

    Uploaded: 29-Jul-2021 11:25

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:4.0.1

    Release Notes

  • support for release orchestration
  • ucv-ext-azure:3.0.1.tar

    Uploaded: 02-Jul-2021 14:14

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:3.0.1

    Release Notes

  • Added Deployment Orchestration Support for Azure Release pipeline
  • ucv-ext-azure:2.0.17.tar

    Uploaded: 23-Jun-2021 05:58

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:2.0.17

    Release Notes

  • Performance Improvement
  • ucv-ext-azure:2.0.14.tar

    Uploaded: 03-May-2021 13:26

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:2.0.14

    Release Notes

  • Removed IBM related keywords
  • ucv-ext-azure:2.0.4.tar

    Uploaded: 08-Feb-2021 07:31

    Pull Command

    docker pull hclcr.io/accelerate/ucv-ext-azure:2.0.4

    Release Notes

  • bug fixes for issues in sync deployments
  • Summary

    The Azure DevOps plugin provides for integration with an Azure DevOps server.

    This plugin imports work items, commits, pull requests, builds, and deployment data from an Azure DevOps server and saves them as HCL Accelerate issues. Data between the Azure DevOps server and the HCL Accelerate server is synchronized every five minutes.

    The plugin can also orchestrate the deployments in Azure DevOps from HCL Accelerate.

    Compatibility

    This plugin requires HCL Accelerate version 2.0 or later.

    Usage

    To use the Azure DevOps 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 Azure DevOps plugin supports scheduled events integration which are listed in the following table.

    Scheduled events
    Name Description
    SyncAzureIssuesEvent Queries the Query Azure DevOps server for new or updated pull requests and commits.
    SyncAzureGitDataEvent Queries the Azure DevOps server for new or updated work items.
    SyncAzureBuildsEvent Queries the Query Azure DevOps server for build data.
    SyncAzurePipelines Queries the Azure DevOps server for deployment data.

    Integration

    There are two methods to integrate the plugin:

    • 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 plugin, 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 and integrating with the Azure DevOps server. The following table describes the information for the creating a HCL Accelerate value stream map.

    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 plugin 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.

    Minimum permission to integrate with Azure Devops

    The Azure Devops Account used to generate the token must have the below permission:

    1) Build – Read Permission
    2) Code – Read Permission
    3) Project and Team – Read Permission
    4) Release – Read Permission
    5) Work Items – Read Permission

    How to use Build Tags Field

    A new hidden field named as Build Tags is added to Azure Plugin for version 4.0.29 and later:

     

    This field can take the comma-separated list to tags that have been added to a pipeline run. If you provide such tags, only the pipeline runs with these specific tags will be pulled to HCL Accelerate as part of SyncAzureBuildsEvent.

     

    This is how you can add tags to your pipeline run in Azure Devops:

    Here, HCL Accelerate is the tag that has been added to the pipeline run.

    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 Azure DevOps Properties table describes the Azure DevOps configuration properties are unique to the Azure DevOps plugin and define the connection and communication to the Azure DevOps server. When using the JSON method to integrate the plugin these properties are coded within the properties configuration property.

    Not all configuration properties are initially displayed in the user interface, to see all properties enable the Hidden field.

    General Configuration properties
    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 version named latest 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 plugin configuration properties used to connect and communicate with the Azure DevOps 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 Azure DevOps plugin is ucv-ext-azure Yes type
    Azure DevOps Properties
    Name Type Description Required Property Name
    Access Token Secure The access token to authenticate with the Azure DevOps server. You can use either this property or the Password property to authenticate with the server. No accessToken
    Organization String The name of the Azure organization in which the specified project exists. Yes organization
    Password Secure The password used to authenticate with the Azure server. Use either this or an access token. No password
    Project String The name of the Azure DevOps project from which to pull data. Yes project
    Branch Name String The branch to pull commits from. No branchName
    Additional Branches Array A comma seperated list of additional branches to collect commits from besides the main one, leave blank if not needed. No otherBranches
    Proxy Password Secure The password used to authenticate with the proxy server. No proxyPassword
    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
    Repositories Array A comma seperated list of repositories from which to import pull request, commit, and build data. No repositories
    URL String The URL of the Azure DevOps server. Yes baseUrl
    User Name String The user name to authenticate with the Azure DevOps server. No username
    HCL Accelerate User Access Key Secure The user access key to authenticate with the HCL Accelerate server. No ucvAccessKey
    Build Tags Array Comma separated list of tags for pushing pipeline runs as build to this server. If kept empty all the pipeline runs will be pushed as builds. No tags

    Release orchestration

    This plugin can be used to orchestrate releases in Azure Devops.

    Compatibility

    • HCL Accelerate version 2.4.0 and later is required to support release orchestration in Azure Devops.
    • Azure Devops plugin version 3.0.1 and later supports release orchestration of Azure Devops release pipelines.
    • Azure Devops plugin version 4.0.1 and later supports release orchestration using Azure Devops yaml pipelines.

    Orchestrating Azure release pipelines from Accelerate

    The plugin syncs repositories, builds, pipelines, releases definitions, environments, pipeline runs and release executions every five minutes with Accelerate. A repository in Azure can be mapped as an application in Accelerate pipeline. The build that is created after mapping the application appears as version in the Input column of the Accelerate pipeline.

    In the following graphic,

    • Parts Unlimited is the Azure Project and my-new-repo is one of the repositories in the Parts Unlimited project.
    • Parts Unlimited/my-new-repo is mapped as the application.
    • 20210729.02 is the latest build created in Azure Devops for this repository.

     

    The release definitions can be mapped as processes in the Accelerate pipeline. For example, Demo-success is the release definition which is deploying to QA environment as shown in the following graphic. The graphic also shows that Demo-success is mapped as the process for Accelerate QA environment.

    QA-my-new-repo is the release environment in Azure Devops for the above release definition. The following graphic shows the mapping the Azure Devops environment in the Accelerate pipeline.

    To orchestrate the deployment from Accelerate, select the version using the deploy option as show in the below picture.

     

    A new release is created in Azure Devops. The deployed version is synced with Accelerate within 5 minutes of deployment as show in the below picture.

    Notes

    In order to orchestrate the release in Azure using this plugin, there should be separate release pipelines defined for each stage.

     

    Orchestrating Azure yaml pipelines from Accelerate

    In order to orchestrate the Azure yaml pipeline using this plugin, the yaml pipeline has to be exploded in such a way that an Azure pipeline deploys to a single environment in Azure.

    In the below example, ‘pipelines-javascript-new’ is the project name as well as the repo name. The Azure yaml pipeline is exploded into two pipelines, ‘pipelines-javascript-new-CI’ and ‘pipelines-javascript-new-CD’. ‘pipelines-javascript-new-CI’  contains the build and test jobs and also the ‘PublishBuildArtifacts@1’ task which uploads the artifact to a  to a staging directory. ‘pipelines-javascript-new-CD’ downloads the artifact created in ‘piplines-javascript-new-CI’ and performs the deployment.

    The following picture shows the yaml script for ‘pipeline-javascript-new-CI’.

     

    The following picture shows the yaml script for ‘pipelines-javascript-new-CD’. The pipeline script downloads the artifact created by the ‘pipelines-javascript-new-CI’ pipeline and then deploys the artifact. A variable ‘version‘ defines the  ‘pipelineId‘  (line number 15 in the yaml script) which is the version of the artifact to be downloaded. The version will be passed to the pipeline when the pipeline is run from Accelerate.

    The below picture shows the ‘pipelines-javascript-new’ repo defined as an application in Accelerate and the ‘pipelines-javascript-new-CD’ pipeline being mapped as a process in Accelerate.

    The below picture shows the environment being mapped.

    The deployment can be started by clicking on the deploy button in the drop down for the environment as show in the below picture.

    The version to be deployed can be selected as follows.

    When the deploy button is clicked, plugin will run the mapped Azure pipeline (pipelines-javascript-new-CD). The selected version number will be set as the value for the ‘version‘ variable in ‘pipelines-javascript-new-CD’ pipeline. The artifact with the above selected version will be downloaded and deployed to the Dev environment.

    The below picture shows successful deployment.

     

    In short, the following are the needed in order to orchestrate the yaml release pipeline from Azure.

    • There should be a separate pipeline for build and / or test and separate pipelines for deployment to each environment.
    • Each deployment pipeline must have an initial step to download the artifact. The download artifact step will download the artifact created in the CI pipeline. The download artifact step can specify the pipelineId using a variable named ‘version‘. (pipelineId: $(version)). The value of the ‘version‘ will be passed to the pipeline when it is run from Accelerate.
    Notes
    Plugin supports the release orchestration of:
    • Scripted yaml pipeline for build and deployment
    • Scripted yaml pipeline for build and release pipeline for deployment
    • Designer UI yaml pipeline for build and deployment
    • Designer UI yaml pipeline for build and Release pipeline for deployment
    Plugin does not support release orchestration if the source code is not in Azure, i.e, if the source code is in GitHub or BitBucket, release orchestration from Accelerate is not possible.

    Automation Tasks

    The following automation tasks are available in the ServiceNow plugin:

    DeployApp

    Use this step to deploy an Azure Devops application.

    This step has no input properties.

    Adding automation tasks to a release

    After the plugin is integrated automated tasks are available to add as a task within a release.

    1. Verify that the Azure Devops server is connected to the HCL Accelerate.
    2. On the Create Task page, select the automation task from the Type field drop-down list.
    3. Complete the properties required for the task.
    4. Click Save.