CloudBees is pleased to announce the general availability of the CloudBees Flow 9.1 feature release. This release delivers innovation across many vectors such as:
-
Single Sign-on with SAML
-
DevOps Insight Dashboard and Reporting Enhancements
-
Pipeline Enhancements
-
Enhanced Swagger Playground
Feature releases make new features available more frequently than long-term support (LTS) releases (such as ElectricFlow 9.0). The features and enhancements introduced in feature releases are typically rolled into the subsequent LTS release. Consult CloudBees maintenance lifecycle policies for more details about types of releases.
What’s New
ElectricFlow is now CloudBees Flow!
Electric Cloud has recently been acquired by CloudBees, Inc. As our teams work together to help formulate an expanded set of solutions for the Software Development market, expect some effect on how you communicate with the Flow team going forward. These effects are anticipated to roll out at various times through the year ahead, depending on the underlying complexities involved. Some changes which may affect the look and feel on how you work with our teams include: re-branding of our products, merging of internal tooling systems like: Zendesk, Sharefile, web site access, documentation, and so on.
In this release, the Flow product is shipped under the name CloudBees Flow with primarily cosmetic changes that do not affect usability of the products, although subsequent changes may come inside future releases. We always encourage you to test your upgrade in advance using a separate test system. So please reach out to the support team for a temporary test license when you reach this point. If you believe you may have special use of the product which may depend on the presence of the CloudBees Flow name in some context, and are concerned about this news, please file a ticket to the Support team with your questions that outline your special use case. At that point, support can work with the Engineering team to confirm what, if any impact, there may be with these versions.
New Features and Functionality
Single Sign-on with SAML
You can now enable and configure SAML 2.0 single sign-on (SSO) in CloudBees Flow. SSO allows users to take action in CloudBees Flow without being prompted for login details. (NMB-1046)
For details, see the:
-
"Logging in to CloudBees Flow" section of the CloudBees Flow 9.1 User Guide.
-
"Configuring Single Sign-On" section in the "Configuring CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide.
-
"Single Sign-On" section in the "Automation Platform" chapter of the CloudBees Flow 9.1 User Guide.
Pipeline and Release Enhancements
CloudBees Flow 9.1 introduces several user interface, configuration, and runtime enhancements to pipelines.
CEV-13880 |
Ability to include |
||
CEV-16641 |
Pipelines can now be configured to restrict them to one run at a time. |
||
CEV-17442 |
Dynamically referenced procedure names can now be specified with the |
||
CEV-19749 |
The `restartPipelineRun ` command now allows restart at any point. |
||
CEV-20460 |
Manual pipeline tasks and gates now support user-defined data entry that serves to simply complete the task/gate without an option to fail. |
||
CEV-20540 |
It is now optional to specify an end date for a pipeline schedule. |
||
CEV-20652 |
The filter UI for release objects now provides the ability to filter unsuccessful releases. |
||
CEV-20659 |
Failed release tasks now automatically appear in viewable area without having to scroll. |
||
CEV-21361 |
The release object list now includes a Last Run status column. |
||
CEV-21597 |
A nested group of tasks specified in a pipeline DSL script now correctly inherits the group membership. |
||
CEV-21653 |
A new option is now available to allow exclusive usage of a pipeline and release pipelines preventing concurrent runs from interfering with each other.
|
||
CEV-21662 |
Finer granularity scheduling is now available for pipelines and release pipelines. |
||
CEV-21684 |
The timezone as configured by the user is now passed along with planned release start and end date. |
||
CEV-21753 |
Manual tasks and application processes now support user-defined text on action labels. |
||
CEV-21758 |
Manual tasks gates and process steps now allow users to skip them after they have been activated bypassing active approval. |
||
CEV-21771 CEV-21646 |
Added new arguments for pipeline `workspaceName ` and `overrideWorkspace ` to capture workspace name and to overrirde workspace specified at procedure/process step levels. |
||
CEV-21839 |
Release Portfolio has been redesigned with a more intuitive interface. |
||
CEV-22099 |
Tasks in future stages/gates can now be run out of order from normal pipeline execution.
|
||
CEV-22247 |
Gate approval no longer requires pipeline execution permission. |
Parameter Enhancements
This release includes new input parameter types for these deploy objects: application, environment, microservice, pipeline, and release. (NMB-27169)
For details, see:
-
"Parameters" in the CloudBees Flow 9.1 User Guide.
-
"API-Parameters" section of the CloudBees Flow 9.1 API Reference Guide.
Data Retention
More and more enterprises from regulated industries, like financial services and healthcare, have strict auditing guidelines around data retention–for example, the need to maintain records for seven years for compliance purposes. As CloudBees Flow is used, the volume of runtime data accumulates in its databases possibly eroding performance, along with data storage challenges. CloudBees Flow data retention provides a way for the enterprise to manage their data archival and purge needs for runtime objects. (NMB-27947)
Data retention in CloudBees Flow includes support for these concepts:
-
Support for data archiving—The process of copying data to storage external to the CloudBees Flow server. Available via either UI or API.
-
Support for data purging—The process of deleting data from the CloudBees Flow server. Available via API, only.
-
Data retention policies—Data archive and purge criteria, based on object type. Configure via either UI or API.
-
Archive connectors—Specifications of the target archival systems. Configure via API, only.
-
"Data Retention" section in the CloudBees Flow 9.1 User Guide .
-
"API Commands–Data Retention" in the CloudBees Flow 9.1 API Guide .
DevOps Insight Dashboard and Reporting Enhancements
Enhancements include the following:
-
The full DevOps Insight dashboard editor functionality is extended to the Release Command Center dashboard and any other command-center type of dashboard. This lets you customize the Release Command Center based on your release processes, displaying the metrics that matter to your organization. (CEV-21904)
-
A new optional parameter,
validate
, is now available for thesendReportingData
API that can be used to validate the data being sent to DevOps Insight Server based on the attributes defined for the report object type. see the "API Commands–DevOps Insight" chapter of the CloudBees Flow 9.1 API Guide, found on the Legacy documentation site. (NMB-27066) -
The DevOps Insight server is upgraded from version 5.3.1 to version 6.6.2 of the Elasticsearch search engine and the Logstash data-collection and log-parsing engine. If you have customized your Elasticsearch configuration or have built custom reports built using the Elasticsearch queries directly, see the "Breaking Changes" documents at https://www.elastic.co/guide/en/elasticsearch/reference/index.html for Elasticsearch releases 5.4 through 6.6 for details. (NMB-27806)
-
You can now use output parameters to send additional values from CloudBees Flow run-time objects (pipeline runs, deployments, and jobs) to the DevOps Insight server. (CEV-16532)
For details about these enhancements, see the "DevOps Insight" chapter of the CloudBees Flow 9.1 User Guide, found on the Legacy documentation site.
Enhanced Swagger UI for the REST API
For details about the newly enhanced Swagger playground and the RESTful API, see the "Using the CloudBees Flow RESTful API" section of the _CloudBees Flow 9.1 API Guide, found on the Legacy documentation site.
NMB-22971 NMB-24321 NMB-26746 |
All Restful API endpoints are now available in the Swagger UI, including |
NMB-26827 |
Recent changes in the |
NMB-26776 |
Deleting one or more resources from resource pool is now available. |
NMB-24123 |
Documentation now includes samples for specifying filter type parameters. |
NMB-26725 |
REST API |
NMB-23654 |
REST URL |
NMB-26747 |
The |
NMB-26321 |
The `searchField ` parameter for `getUsers ` is now spelled correctly in the Swagger UI suggestion. |
NMB-26748 |
The Swagger UI now allows addition of multiple resources. |
Security Improvements
The following security-related improvements were made:
-
Swagger is updated to version 3.22.0 to eliminate the usage of a JavaScript library that has a known vulnerability.
-
The Apache web server used in CloudBees Flow is upgraded from version 2.4.37 to 2.4.39. (NMB-27887)
-
PHP is upgraded from version 7.2.14 to 7.2.16. For details, see https://www.php.net/releases/7_2_16.php. (NMB-27887)
-
OpenSSL is upgraded from version 1.0.2q to 1.0.2r. (NMB-27887)
-
Curl is upgraded from version 7.62.0 to 7.64.0. For details, see https://curl.se/mail/archive-2019-02/0005.html. (NMB-27887)
-
The version of ActiveMQ Artemis is updated to v1.5.6. (NMB-26039, NMB-27686)
-
Jetty is upgraded from version 9.2.24 to 9.2.25 (NMB-28261)
Plugin Enhancements
Plugin Development Framework
The new Flow Plugin Development Framework ( flowpdf
) provides a combination of tools, APIs, and libraries that are used to create a flow plugin in four steps. The entire set of capabilities of the framework are made available through a single command line tool (CLI) called flowpdk
. This tool is available in our open source community GitHub organization here: https://github.com/electric-cloud-community/flowpdf
In addition, a comprehensive Plugin Developer Guide , which consists of plugin concepts, samples, and tutorials in both HTML and PDF formats, can be found in the URL above.
Going forward, the Flow Plugin Development Framework is the recommended approach to create plugins and replaces the Plugin Commander SDK. The Plugin Commander SDK, and its guide, is considered obsolete and is no longer supported. |
New Plugins in this Release
EC-AzureDevOps |
Integrates with both Azure DevOps Services (previously known as VSTS) and Azure DevOps Server (previously known as TFS) to provide management of Work Items and Builds. |
EC-Twistlock |
Integrates with Twistlock a container security solution to run Scans and create policy reports on Images. |
EC-Nexus |
Integrates with SonaType Nexus Repository Manager to provide Artifact Retrieval and enables Nexus as one of the Maven Repositories available in the Flow Component Definition. |
EC-RemoteAccess |
Provides the ability to execute one or more commands (including interactive commands) on Linux Remote Hosts. |
Plugins EC-RemoteAccess and EC-Nexus are installed by default with the CloudBees Flow installer. Plugins EC-Ant, EC-EMake, EC-Klocwork are no longer installed by default. |
Plugin Enhancements in this Release
The following is a list of key changes made to existing plugins:
EC-Artifactory |
Now supports Publishing one or more artifacts to JFrog Artifactory. |
EC-Ansible |
Improved to have more optimal promotion time supports credentials stored in Vault Privilege Escalation and is certified to work on Windows based Ansible Targets. |
EC-Jenkins |
Enhanced to support monitoring concurrent parameterized Jenkins jobs as part of `RunAndMonitorBuild ` and `RunAndWait ` procedures. |
EC-ServiceNow |
Enhanced to support Agile/Release Module objects. |
EC-BigIP |
Revamped with more usable and robust procedure interfaces. The issue caused due to interpolation where in an @ in a user name causes a plugin configuration creation to fail is addressed for a large number of plugins. |
Flow Native Jenkins |
Improvements to address Security Vulnerabilities as in https://www.cloudbees.com/security-advisories/cloudbees-security-advisory-2019-06-11. |
Other Enhancements
CEV-21356 |
The New Trigger dialog box for creating event-based (webhook or polling) triggers is enhanced with a new Select Plugin drop down menu. |
CEV-21636 CEV-22061 |
The new API command `runCatalogItem ` has been added to execute a catalog item. |
CEV-21814 |
In 9.0 and prior versions, a user was able to restart a pipeline run as long as they had execute privilege on pipeline or release. As of 9.0.1, when restarting a pipeline run from a specific stage or task the system checks for execute privilege on all stages/tasks that will run. |
CEV-21850 |
Improvements in path-to-production inventory management.
For more informantion, see the "API Commands—Environment" chapter of the API Guide, found on the Legacy documentation site. |
CEV-21854 |
For many CloudBees Flow objects, access control can now be configured from the object’s editor view. See "Access Control" in the CloudBees Flow User Guide, found on the Legacy documentation site. |
CEV-21954 |
Upgrade issue when upgrading from 8.0 or older versions to 9.0 due to existence of releases with no associated pipelines has now been fixed. |
CEV-22403 |
The response for the `getReleaseInventory ` Perl API command now includes an `environmentInventoryDetail ` element that contains the latest deployment history details in the environment. This can be the same as the release inventory or it can differ if a deployment for the application occurred after the deployment of the application from the release. |
NMB-16268 NMB-21324 |
Upgrades now support symbolic links in |
NMB-27134 NMB-27151 |
The |
NMB-27824 |
The following environment variables for server communication are introduced.
|
NMB-27827 |
The `ClusterInfoTool ` utility is updated to provide more debugging information. For details see the "Getting information on the CloudBees Flow Server Cluster from ZooKeeper" section in the "Creating a Server Cluster for CloudBees Flow or DevOps Insight" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27135 NMB-28020 |
Support for the `pruneUpgradeObsolete ` flag of the `pruneChangeHistory ` operation has been extended to the ec-perl, ec-groovy, and REST APIs. |
NMB-27861 |
Property references are now supported in the |
Documentation enhancements |
|
NMB-25022 |
The "CloudBees Flow Server is Unresponsive and Displays an OutOfMemory Error" section is obsolete and is therefore removed from the "Troubleshooting an CloudBees Flow Installation" section in the CloudBees Flow 9.1 Installation Guide. |
NMB-25923 |
A new step is added to rename the downloaded connector in the "Installing the MySQL JDBC Driver" section in the "Installing CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-26183 |
A new "Configuring Repository Servers" section is added to the "Creating a Server Cluster for CloudBees Flow or DevOps Insight" chapter of the CloudBees Flow 9.0 Installation Guide, found on the Legacy documentation site. |
NMB-26992 |
A new "Configuring the Web and Repository Servers to Use IPv4" section is added to the "Configuring CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27111 |
The procedure in the "Running a Cluster in Single-Server Mode" section in the "Creating a Server Cluster for CloudBees Flow or DevOps Insight" chapter of the CloudBees Flow 9.1 Installation Guide is updated with a new step: "3. Add: wrapper.java.additional.261=-DCOMMANDER_IGNORE_SERVER_MISMATCH=1 to the wrapper.conf file of the machine that you are working on." For details see the guide found on the Legacy documentation site. |
NMB-27112 |
The "Uploading Configuration Files to ZooKeeper" > "Copying the Configuration Files to the Other Server Nodes" subsection in the "Clustering" chapter of the CloudBees Flow 9.1 Installation Guide is updated with a new step: "5. Copy all of the Configuration files to each of the conf folders of the other Server Nodes. This is to ensure parity for all server nodes in the cluster." For details see the guide found on the Legacy documentation site. |
NMB-27481 |
The knowledge base article, KBEC-00306 - High Availability and CloudBees Flow Performance, is updated with more information about how jobs are balanced between the two machines in an HA system. For details see https://docs.cloudbees.com/d/kb-360032827852 |
NMB-27734 |
All information about remote agents is removed from the "Configuring Universal Access for a Network Location" section of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27759 |
An "Adding a Node to an Existing Cluster" section is added to the "Creating a Server Cluster for CloudBees Flow or DevOps Insight" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27833 |
A "Using a Separate CloudBees Flow Production Server to Minimize Business Risk" section is added to the "Installing CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27870 |
The "Running ZooKeeper as a Service on Linux" section is updated and a new "Configuring ZooKeeper Service Auto-Restart on Linux" section is added to the "Creating a Server Cluster for CloudBees Flow or DevOps Insight" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27874 |
The two instances of the "sync" parameter are removed from the procedures in the "Leaving the Plugins Directory on the CloudBees Flow Server" section in the "Configuring CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
NMB-27877 |
A step for adding a vm.swappiness=0 line to the /etc/sysctl.conf file is added to the procedure in the "Adjusting Swappiness on Linux" section in the "Configuring CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide. For details see the guide found on the Legacy documentation site. |
NMB-27931 |
|
NMB-28076 |
The example in the "runProcedure" section of the CloudBees Flow 9.1 API Guide is fixed to show that ectool prompts you for the password for the credential on a separate line after you enter the runProcedure command. For details see the guide found on the Legacy documentation site. |
NMB-28265 |
The --nonRoot --unixAgentUser --unixAgentGroup --unixServerUser and --unixServerGroup argument descriptions in the "Silent Install Arguments" section in the "Installing CloudBees Flow" chapter of the CloudBeesFlow 9.1 Installation Guide are updated to state that the --nonRoot argument is not compatible with the other arguments listed above. For details see the guide found on the Legacy documentation site. |
A new "Mounting Network Plugins Shares for High-Availability CloudBees Flow Components" section is added to the "Configuring CloudBees Flow" chapter of the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site. |
Resolved Issues
NMB-16268 |
Better handling of symbolic links for data and artifacts and apache during upgrade |
NMB-26218 |
Document clearly what network share files need to be mounted for high availability. |
NMB-26405 |
Error when installing DOIS using install directory "C:\Program Files (x86)\Electric Cloud\ElectricCommander" on Windows |
NMB-26454 |
Added information into the documentation on how to create the first trusted agent in a new Zone. |
NMB-27108 |
Added information about the Stomp Client URI to the "Installing and Configuring a Load Balancer" section in the "Creating a Server Cluster for ElectricFlow or DevOps Insight" chapter of the ElectricFlow 9.0 Installation Guide: |
NMB-27148 |
Email notifications now include the correct event in the name. |
NMB-27817 |
All Deploy intrinsic properties are now available via the `describeObject ` API command. |
NMB-27926 |
Fixed regression issue with OutOfMemoryError: Requested array size exceeds VM limit. (NMB-27926) |
NMB-27945 |
An issue is fixed in which an CloudBees Flow server upgrade caused ACLs on plugin projects to be lost. |
NMB-27983 |
9.0 Repository doesn’t preserve directory structure when uploading folder using "Folder Upload" option from UI.Works via ectool |
NMB-28067 |
An issue is fixed where certain jobs that had subprocedure calls were not moving forward for hours even though the subprocedure step with command actually completed. |
NMB-28198 |
No document about reset/delete email notifier template Document that on windows Agents %TMP% %TEMP%. %USERPROFILE% should not have folder names with spaces |
NMB-28223 |
An issue in which using the ec-groovy evalDsl command to import DSL files longer than 8 KB failed with an "Error HTTP/1.1 414 Request-URI Too Long" error is fixed. |
CEV-11283 |
Project-filter feature on applications-list page should only filter on projects that actually have applications in them instead of showing a list of potentially 100s of projects. |
CEV-19510 |
Schedule multiple days on a weekly schedule Similar for Commander. |
CEV-19797 |
CEV-21642 /myService shortcut is not documented. |
CEV-20189 |
Application/service deployments can now obtain exclusive access to an environment to restrict simultaneous deployments. |
CEV-21105 |
Unable to proceed with pipeline when waiting on approval gate and deleted approval gate from definition. |
CEV-21384 |
Being approver on a gate in a pipeline requires user to have Execute ACL on Project. |
CEV-21475 |
CEV-21642 filter in "ectool getPipelineRuntimes" does not work. |
CEV-21569 |
Allow a different snapshot in each deployer. |
CEV-21799 |
generateDsl does not work for Puppet plugin. |
CEV-21800 |
generateDsl of properties does not include expandable and value tracking options. |
CEV-21827 |
Option lists for services specified with options DSL in formal parameters of type select no longer return an unknown exception. |
CEV-21893 |
UI - Doesn’t clean up simpleList when modifying Parameter Type from Dropdown to other type. |
CEV-21917 |
Custom validation doesn’t work in the property view |
CEV-22018 |
myResourcePool is not available when using in a component process |
CEV-22100 |
Calling a component process with a "bad Property Reference" within a, application processs step does not prevent user from running (which is ok) but "Succeeds" without error on the top level step (not ok).The top level step should fail with PropertyReferenceError |
CEV-22125 |
Flow page does not load when a user group has session ACLs defined. Needs read privilege on systemObject 'devOpsInsightServerConfigurations' |
CEV-22325 |
"name patterns" for environments in release are not dynamic |
CEV-22418 |
Selected environments disappear when selecting configuration |
CEV-22750 |
Smart-Deploy is not working properly for master-components |
Behavior Changes
-
With the introduction of the Release Command Center Setup capability in version 9.0, the "Setup for Command Center" procedures are obsolete, are no longer created for new installations, and are deprecated for upgrades:
-
HP-ALM Setup for Command Center - quality
-
Jenkins Setup for Command Center - build and quality
-
JIRA Setup for Command Center - defect
-
JIRA Setup for Command Center - feature
-
ServiceNow Setup for Command Center - incident
After an upgrade to 9.1 from a version prior to 9.0, the descriptions for these procedures appear as follows:
[DEPRECATED] This procedure is deprecated and will be removed in a future release. Go to the Command Center Editor to setup the Command Center for a given release. (CEV-21234)
-
Updated Plugins
This section lists plugins that have new functionality introduced in this release. The version numbers are provided for convenience: refer to the individual plugin documentation for more details.
EC-AmazonECS |
1.1.1 |
EC-Ansible |
1.2.1 |
EC-Artifact |
1.1.7 |
EC-Artifactory |
1.4.2 |
EC-Azure |
1.1.8 |
EC-BigIP |
3.0.0 |
EC-CloudFoundry |
1.4.3 |
EC-Docker |
1.5.3 |
EC-DynaTrace |
1.1.1 |
EC-EC2 |
2.5.4 |
EC-ESX |
2.3.5 |
EC-FlowLogCollector |
1.1.2 |
EC-GoogleContainerEngine |
1.2.1 |
EC-JBoss |
2.6.3 |
EC-Jenkins |
1.14.1 |
EC-SonarQube |
1.2.1 |
EC-Tomcat |
2.3.4 |
EC-WebLogic |
3.4.3 |
EC-WebSphere |
2.6.3 |
ECSCM-Git |
3.9.1 |
For a complete list of bundled plugins, see the "Plugins That are Bundled with CloudBees Flow" appendix in the CloudBees Flow 9.1 User Guide, found on the Legacy documentation site.
Installation and Upgrade Notes
For complete installation and upgrade information, see the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site.
Upgrading Your Existing CloudBees Flow Environment
Before starting an upgrade , make sure to back up your existing CloudBees Flow data. |
CloudBees Flow and Automation Platform Versions That Are Upgradable
Upgrades to CloudBees Flow 9. x are supported only from ElectricCommander 5.0 or any version before 9.0. Upgrades to version 9. x from any ElectricCommander version that is 4.2 or earlier are not supported. For upgrade instructions, see the CloudBees Flow 9.1 Installation Guide, found on the Legacy documentation site.
Upgrading an Older DevOps Insight Version to Version 9.1
Upgrading to CloudBees Flow 9.1 requires upgrading your older version of DevOps Insight server to DevOps Insight server 9.1.
Updating Elements Containing applicationServiceMapping in XML Export Files from CloudBees Flow 8.0.1 or Earlier
If your XML export file from CloudBees Flow 8.0.1 or earlier versions has elements containing applicationServiceMapping
, you must change all instances of that string in the file to serviceClusterMapping
before importing the file into version 9.1. For example, change the following XML:
<applicationServiceMapping> <applicationServiceMappingId>9efcda31-a85f-11e7-8500-0800279f198d</applicationServiceMappingId> <applicationServiceMappingName>9efcda31-a85f-11e7-8500-0800279f198d</applicationServiceMappingName> … </applicationServiceMapping>
to
<serviceClusterMapping> <serviceClusterMappingId>9efcda31-a85f-11e7-8500-0800279f198d</serviceClusterMappingId> <serviceClusterMappingName>9efcda31-a85f-11e7-8500-0800279f198d</serviceClusterMappingName> … </serviceClusterMapping>
(CEV-16237 and CEV-16158)
Backing Up and Restoring Custom Settings in the elasticsearch.yml File for DevOps Insight Versions 8.2 and Earlier
The DevOps Insight installer overwrites the elasticsearch.yml
configuration file with a new file. As of DevOps Insight version 8.3, the file includes a Custom Settings
section, which lets you add Elasticsearch settings not managed by the DevOps Insight server without being lost during an upgrade. If you added settings to this file in version 8.2 or earlier that you want to preserve, you must back up the file to a separate location before upgrading to version 9.1 or newer versions and then add the settings to the Custom Settings
section after the upgrade. During future upgrades, the installer will preserve the settings in the Custom Settings
section. (NMB-25850)
Removing init_connect and skip-character-set-client-handshake from Your MySQL Configuration Before Upgrading
Since release 8.0.1, CloudBees has instructed customers using a MySQL database to use the following two lines in their MySQL configuration:
init_connect='SET collation_connection = utf8_unicode_ci, NAMES utf8' skip-character-set-client-handshake
Before upgrading CloudBees Flow, you must remove these lines or comment them out. Otherwise, jobs will not start. (NMB-27937)
Ensuring the Correct Default MySQL Default Collation
Since release 8.0.1, CloudBees has instructed customers using a MySQL database to ensure that the default collation for their database schema is set to utf8_unicode_ci
or utf8_general_ci
and that no table in their schema overrides this. As of release 9.0, the CloudBees Flow server checks this configuration on startup and logs errors in the server log if it is not set correctly.
If the collation is not configured correctly, then entering non-ASCII text into CloudBees Flow might cause errors. For example, setting a release name to a non-ASCII value and attempting a search causes an exception.
If your MySQL database schema or any tables in it are set to a non-UTF-8 collation order, see Knowledge Base article KBEC-00385 - Converting a MySQL Database From Latin-1 to UTF-8 Before Upgrading to CloudBees Flow 8.0.1 for detailed instructions about safely converting your schema to UTF-8. (NMB-26521)
Upgrading Agents that Run the ec-groovy Job Step in Multizone Deployments
In multizone CloudBees Flow deployments, CloudBees Flow agents that are in a different zone than the CloudBees Flow server must be upgraded to version 9.0 or later for the ec-groovy
job step to run successfully on those agents. You must also upgrade the gateway agents that lead back to the server’s zone including those in any zones in between the agent’s zone and the server’s zone. (NMB-27490)
For details about multiple zones and gateway agents, see the "Gateways and Zones," "Zones," and "Gateways" sections in the "Automation Platform" chapter of the CloudBees Flow User Guide .
Removing the SSL 2.0 Client Hello or SSLv2Hello Protocol from Your Security Configurations
To avoid the following warning in the Automation Platform web UI, we recommend removing the SSL 2.0 Client Hello
or SSLv2Hello
protocol from your security configurations for all components:
We recommend removing "SSL 2.0 Client Hello format from server configuration and upgrade older agents as indicated on the Cloud / Resources Page to avoid security risk.
To safely remove this protocol, enter the following command on the ElectricFlow server:
$ ecconfigure --serverTLSEnabledProtocol=TLSv1,TLSv1.1,TLSv1.2
When you do this, you would also need to upgrade older agents to the latest version to avoid security risks. You would need to upgrade agents if you are using the following agent versions:
-
Windows, Linux: 6.0.3 or older; 6.2 or older
-
Sun Solaris, HP UX, Mac OS: 8.4 or older
(NMB-27934)
Upgrading the DevOps Insight Server
This section provides information about upgrading the DevOps Insight server from Version 7.3 to Version 9.1 .
Re-Specifying Configuration Settings Not Preserved During the Upgrade
The installers (GUI, interactive console, and silent mode) for the DevOps Insight server do not preserve the configuration setting for the DevOps Insight server host name (--hostName
) or the setting for the Elasticsearch number of shards (--elasticsearchNumberOfShards
) during the upgrade from 7.3 to 9.0. If you specified nondefault values during the 7.3 Reporting server installation, you must re-specify these settings during the upgrade. (All other settings are preserved.)
DevOps Insight Server Configuration Notes
For a production environment, Electric Cloud recommends that you install the DevOps Insight server on a system other than systems running other ElectricFlow components (such as the ElectricFlow server, web server, repository server, or agent). If you must install it on the same system (such as for testing or other non-production or trial-basis situations) see “Running the DevOps Insight Server on a System with Other ElectricFlow Components” in the CloudBees Flow Installation Guide at Legacy documentation for details.
Configuration Notes
Performing a Full Import
During a full import, the import operation might hang in the following scenarios. To import successfully into CloudBees Flow 8.0 and newer versions, perform the appropriate workarounds (CEV-15447 and (CEV-11873):
-
A manual process step in a process has formal parameters. The workaround is to remove the entry related to the property sheet for the job step that is associated with the manual process step.
-
In the exported XML file from the earlier release, two pipelines are in different projects, and both pipelines have no gate tasks. The flow associated with the pipeline is duplicated under both projects. The workaround is to remove the flow element under the projects.
Updating Application Component Plugins
Application components are based on plugins (EC-Artifact, EC-Maven and EC-FileSysRepo) with plugin details (such as name, procedure, and parameters) stored in properties on the component. Before version 5.4, the value for the pluginProjectName
property included the plugin name and version (for example, EC-Artifact-1.0.3.4), which closely tied components to specific versions.
When you export your project data before upgrading from ElectricCommander 5.0, 5.1, 5.2, or 5.3 to CloudBees Flow 8. x, you must update the application component plugin versions in the export file to the versions on the target CloudBees Flow server before importing the data to CloudBees Flow 8. x .
For example, if the promoted EC-Artifact plugin version is 1.0.4.1, then in the snippet below, you would change EC-Artifact-1.0.3.4 to EC-Artifact-1.0.4.1:
<property> <propertyId>3f509ffd-506b-11e6-9960-f01faf2c26a3</propertyId> <propertyName>pluginProjectName</propertyName> <counter>0</counter> <createTime>2016-07-23T00:20:20.829Z</createTime> <expandable>1</expandable> <lastModifiedBy>admin</lastModifiedBy> <modifyTime>2016-07-23T00:20:20.829Z</modifyTime> <owner>admin</owner> <tracked>1</tracked> <value>EC-Artifact-1.0.3.4</value> </property> <property>
Starting with release 5.4, CloudBees Flow uses the plugin key (which does not include the version) when defining a component. (CEV-6679)
Registering a Custom Plugin Procedure for the Step Creation Dialog
You must register a user-developed plugin so that it appears as an option:
-
When you use the plugin to configure a step in a component or application process.
-
In a procedure in the automation platform.
For details, see the "Register your procedure for the step creation dialog" section in the "Examples and Tutorials" chapter of the CloudBees Flow Plugin Developer Guide . (CEV-3649)
Limitations
-
When an application is cloned from one project (the original project) to another (the destination project), the tier maps for the application will point to the environments with the same names in the destination project. To deploy the application to the environments in the original project, you must create tier maps connecting the application to those environments.
-
When an assignee is added in a manual process step or stage task through the web interface, the Search field displays only the users who have actually logged into the system.
Known Issues
NMB-24949 |
When you use the Automation Platform UI to upload and publish artifact files with non-English characters in their file names the operation fails with the following error: |
||
NMB-25784 |
Web upload artifact failed with error "Upload file: CGI open of tmpfile: Too many open files" |
||
NMB-26021 |
Modifications of LDAP user data (such as email addresses) on an Active Directory server after registration in CloudBees Flow do not appear properly in user details (in the Automation Platform UI or ectool) until the CloudBees Flow server is restarted. |
||
NMB-26962 |
(Windows platforms only) If the Elasticsearch cluster which is used by DevOps Insight is in the red state (in Elasticsearch this means that it only partly functions and some data is unavailable) then upgrade reconfigure or uninstall operations will not work. Because the Elasticsearch service can not be stopped when a cluster is in red state kill the Elasticsearch service process by the task manager before running the installer for these actions. |
||
NMB-28135 |
The Microsoft Edge browser does not work with SAML 2.0 and a self-signed certificate during redirection from the identity provider to the service provider. Edge is not recommended for login via SAML 2.0. |
||
NMB-28380 |
|||
NMB-28381 |
The |
||
CEV-11106 |
When an application with snapshots created in CloudBees Flow 6.1 or earlier is cloned and a project containing this application is imported to CloudBees Flow 6.3 or higher the import operation fails. |
||
CEV-12363 |
Error prompts for runtimes started by a schedule are not visible if the schedule was created with a missed configuration. |
||
CEV-12429 |
The stage inclusion status in the Release Dashboard changes color after a stage is renamed. |
||
CEV-14689 |
No error prompt appears for failed tasks and retry tasks during a pipeline runtime. |
||
CEV-15122 |
If an application process step cannot expand to its child steps (because of an invalid run condition or an invalid formal parameter) then the step is not retried even if it uses "retry on error" error handling. The job eventually completes with an error. |
||
CEV-15829 |
The retry count for group tasks or rules using "automated retry on error" is missing from the Pipeline runtime page. |
||
CEV-16245 |
Multiple mapped environments with the same name from different projects are not supported in email notifications. |
||
CEV-16250 |
A project import might not include the path-to-production view. |
||
CEV-16930 |
Jobs might not appear upon drill-down into the "Clusters With Most Deployments" widget in the DevOps Insight Microservices Dashboard if the service does not contain a deploy step in the process. |
||
CEV-17164 |
When you do a full import from version 8.0 to version 8.2 or newer and two or more releases have the same name (under different projects) and are associated to the same pipeline then after import the runs for all releases might become associated to the first imported release. This is because CloudBees Flow cannot differentiate runs between the releases since all runs are under the same pipeline project and have the same name. To work around this issue rename releases in the export file so that all their occurrences (in |
||
CEV-18531 |
All subreleases of a release must appear before the release in the DSL for the release-to-subrelease link to be created. |
||
CEV-19239 CEV-19259 |
The ability to search by assignee in a Deployment Report is not available in the DevOps Insight report editor. |
||
CEV-21426 |
If Release Command Center was setup for JIRA for user-stories and defects and the JIRA project name was mapped to the release project name using the following field mapping: ` projectName:releaseProjectName` then before upgrading to 9.1 the field mapping must be updated to mention the actual release project name using the following field mapping format: ` "release-project-name-in-CloudBees Flow":releaseProjectName` |
||
CEV-22379 |
Long custom labels in email notifications do not render correctly. |
||
CEV-22644 |
Navigation to a sub-release editor takes user to the parent release editor. As a workround, select the subrelease from the left-hand navigation in the parent’s release editor. |
||
N/A |
You can revert changes only for high-level design objects such as applications procedures procedure steps workflow definitions and state definitions.
|
||
N/A |
Enabling Recursively Traverse Group Hierarchy might impact system performance when the LDAP group hierarchy is traversed. The amount of impact varies with the configurations of the CloudBees Flow and LDAP servers the depth of group hierarchy in the LDAP server and the network latency between the servers. Make sure that your directory provider can handle the additional load for supporting nested group hierarchy traversal. |
||
N/A |
System performance might decrease if you disable change tracking at the server level and then re-enable it at that level. (Change tracking is enabled by default.) For details about using change tracking see the "Change Tracking" chapter in the CloudBees Flow 9.1 User Guide in the Legacy documentation |
Documentation and Online Help
Product Documentation
CloudBees Flow product documentation is available at Legacy documentation as follows:
-
CloudBees Flow Installation Guide
-
CloudBees Flow User Guide
-
CloudBees Flow API Guide
-
CloudBees Flow Release Notes
-
Groovy API Guide
-
DevOps Foresight Installation and User Guide
Documentation on the website is updated periodically.
Troubleshooting and Getting Help
Technical Support
Contact Electric Cloud technical support:
-
https://support.cloudbees.com/ and then click Submit a request to submit or see your support tickets
Be prepared to provide your:
-
Name, title, company name, phone number, and email address
-
Operating system and version number
-
Product name and release version
-
Problem description
CloudBees Flow Knowledge Base
Go to https://support.cloudbees.com/hc/en-us/sections/360006415292-Flow-KB to find in-depth explanations of specific topics and solutions for specific problems.