VMware vRealize Code Stream 2.2 Release Notes

|

vRealize Code Stream 2.2 | 1 January 2017 | Build 4660246

Check regularly for additions and updates to these release notes.

What's in the Release Notes

The release notes cover the following topics:

What's New

This release of vRealize Code Stream enhances platform capabilities. It extends Role-Based Access Control (RBAC) to pipeline templates, offers the ability to resume a failed pipeline execution from the point of failure, and provides support for integrating with remote jFrog Artifactory instances. It also introduces a Plug-in SDK to build custom plug-ins for vRealize Code Stream.

New Features

  • Resume from Failure

    This feature adds the ability to resume failed pipeline executions from the point of failure onward. Failures can occur because of transient issues such as a network outage or an issue with an external system. When you resume a pipeline after correcting the underlying issue for a failed task, the pipeline keeps the context of all previously executed tasks intact and allows the same pipeline execution to resume.

    An audit trail is also maintained as part of the execution metadata that highlights the resumed task(s), timestamp, and user information.

    You can identify the resumed pipeline executions on the Dashboard and Executions details page. You can resume a pipeline execution multiple times as long as you have permissions to trigger the resume action on that specific pipeline.

  • Role-Based Access Control on Pipelines

    The roles of Release Manager and Release Engineer are now extended to individual pipeline templates. You can optionally assign permissions on pipeline templates to restrict specific sets of users or groups to modify and trigger the pipeline templates.

    Similar to how users who have the Release Manager role can create and modify any pipeline template, when you assign a pipeline template to a set of Release Managers, the permission to modify or delete the pipeline template is only restricted to that set of Release Managers.

    Similarly, when you assign a pipeline template to a set of Release Engineers, only that set of Release Engineers can trigger an execution for the pipeline template. Any user that has either the Release Manager or Release Engineer role can continue to view all of the pipeline templates in the tenant. In addition to the explicit list of users who have permissions on the pipeline template, tenant administrators have the Release Manager role assigned implicitly, which allows them to rescue or clean up any pipeline template in the tenant.

    By default, all Release Managers can create a pipeline. When you do not add any users or groups, the following permissions are available by default:

    • All vRealize Code Stream Release Managers can modify and trigger the pipeline.
    • All vRealize Code Stream Release Engineers can trigger the pipeline.
    • A user who has the Release Manager or Release Engineer role and Tenant Administrator role has implicit access to modify and trigger pipeline templates even when not explicitly added to the permissions list.
       
  • Remote Artifactory Integration

    This version of Code Stream supports integration with multiple remote Artifactory instances v4.7.7 or later, which allows teams to directly integrate vRealize Code Stream with their existing Artifactory instances. Teams can now independently upgrade vRealize Code Stream and Artifactory instances, and leverage advanced deployment configurations offered by Artifactory, such as for High Availability.

    Note that teams who use Artifactory must procure appropriate licenses directly from jFrog, as Artifactory is not included in vRealize Code Stream 2.2.

    Upgrading Code Stream from earlier versions to version 2.2 involves several steps as described in the vRealize Code Stream Upgrade Guide.

  • Plug-in SDK

    Building plug-ins is now possible through the Plug-in SDK that is available from VMware. The Plug-in SDK provides all the necessary components that you need, including examples, documentation, and the build and packaging tools to allow you to build native plug-ins for Code Stream.

    The Plug-in SDK leverages the widely popular open source framework from Alpaca (http://www.alpacajs.org) to build interactive user interfaces from the JSON Schema. The unique plug-in architecture of Code Stream is built on the open source framework of Xenon (https://github.com/vmware/xenon), which is built for massive scale.

Dashboard Improvements

The dashboard now displays the overall status of pipeline executions, including those that were resumed.

  • Release Engineers can trigger pipelines.
  • Release Managers can modify and trigger pipelines.

Other Enhancements

Other enhancements for this release include:

  • Jenkins Plug-in: Added support for Jenkins Folder plug-in, which includes the ability to list and trigger Jenkins jobs organized within Jenkins subfolders.
  • vRealize Automation 7.x Plug-in: Added support for configuring the bluepoint deployment count as a pipeline property variable.

License Keys

To use the latest version of vRealize Code Stream, you can continue to use your 2.x license key.
For more information about licenses, see the Licensing Help Center.

Documentation

This release of vRealize Code Stream includes the following product documentation:

Support Information

  • Applying a vRealize Code Stream license from the vRealize Automation CLI is supported.
    Run the command, /usr/sbin/vcac-vami license-update --key CodeStreamLicenseKey in the vRealize Automation CLI.
  • vRealize Code Stream supports the following Web browsers: Internet Explorer 10.0 or later, Firefox, and Chrome.

Hot Fix for vRealize Code Stream

A hot fix is provided to correct the following issues in the release of vRealize Code Stream 2.2:

  • While resuming a failed pipeline execution, the pipeline property values for the resumed pipeline are the default values instead of the values provided at the time of the pipeline execution.
  • In certain conditions, the pipeline properties that are bound to tasks fail to evaluate at run time, and result in the error message: Failed to evaluate properties.
  • Sometimes, when you edit a vRealize Automation 7.x task or tasks in a pipeline template that was executed earlier, an error occurs stating that the blueprint was changed incorrectly.

To apply these fixes, see KB 2148339.

Do not enable Code Stream on an appliance that runs in High Availability mode

Although vRealize Code Stream can be enabled on the same virtual appliance as vRealize Automation in lab or evaluation environments, it is not a recommended nor supported configuration for production systems, particularly when vRealize Automation is configured in High Availability (HA) mode. The current version of vRealize Code Stream does not support HA configuration, and if enabled on a vRealize Automation system in HA mode, can leave the overall system in an unpredictable state. For more information, see KB 2145084.

Resolved Issues

The following issues are resolved in this release:

  • None

Known Issues

The known issues are grouped as follows.

Upgrade
  • Cannot edit a Jenkins endpoint that has a "." in the name
    You cannot edit a Jenkins endpoint if the endpoint name contains a ".", and the endpoint was created in vRealize Code Stream 2.0. After you upgrade to this version of vRealize Code Stream, if a Jenkins endpoint was created in Administration > vRO Configuration > Endpoints, and the name of the endpoint includes a ".", even though the endpoint appears on the Codestream > Endpoints tab, when you click the Edit or Delete buttons, vRealize Code Stream cannot fetch the endpoint.
    Workaround:
    1. Use the vRealize Code Stream REST API to modify the endpoint. For example:
    2. #Get the token
      POST https://{{appliance}}/identity/api/tokens
      {
      "username": "fritz",
      "password": "password",
      "tenant": "your_tenant"
      }

      #Get the endpoint (trailing slash is needed to escape the period in endpoint name)
      https://{{appliance}}/release-management-service/api/endpoints/vrcs.jenkins:JenkinsServer/test.jenkins/
      #Update the endpoint using the result above and changing the name (test.jenkins -> test-jenkins)
      PUT https://{{appliance}}/release-management-service/api/endpoints/vrcs.jenkins:JenkinsServer/test.jenkins/
      { "name": "test-jenkins",
      "description": null,
      "dataType": "vrcs.jenkins:JenkinsServer",
      "data": {
      "url": "http://10.10.100.20:8080",
      "username": "admin",
      "password": "admin_password",
      "displayName": "dev-server-2.test"
      },
      "updateTime": "2016-12-06T19:18:58.920Z",
      "updateUser": "fritz@coke.sqa-horizon.local"
      }

    3. Manually update the pipeline to refer to the old endpoint.
Pipeline
  • From the Dashboard, cannot resume a pipeline that has a failed gating rule
    From the Dashboard tab, when you resume a pipeline that has a failed gating rule, vRealize Code Stream displays the following error: Cannot resume execution due to insufficient context information. Failed Stage and Task details are required.
    Workaround: To resume the failed pipeline, click the Pipeline Executions tab, select the failed pipeline, and click Resume Execution.
Plug-ins
  • A RestCompositeException error occurs when you deploy a container vRealize Automation blueprint in a vRealize Code Stream task
    When you deploy this version of vRealize Code Stream and add vRealize Automation 7.2 as an endpoint, then model a pipeline with a vRealize Automation 7.2 task, and select this endpoint in the task configuration, after you save the task configuration and run the pipeline, the following message occurs with a list of status codes: RestCompositeException: [Rest Composite Exception]: ( [Rest Error]: ...)
    Workaround: None
jFrog Artifactory
  • Differences between Pro and Open Source jFrog Artifactory
    In open source Artifactories, only GAVC search is present, and the REST API used to search for artifacts does not return results for artifacts that have a '.' in the GAVC parameters. For example, if you deploy an artifact that has a group ID of com.vmware.something, and search for com.vmware.something, the search produces no results. This behavior occurs in the Artifactory user interface and through the REST APIs. As a result, this behavior affects the Artifactory plug-in.
    Workaround: None