CloudBees CI release highlights

What’s new in CloudBees CI 2.361.3.2

Watch the video

New features

None.

Feature enhancements

Turns off the execution of local Git hooks when the plugin initializes a new repository both on the controller and on agents (BEE-8340)

Refer to CloudBees Security Advisory 2022-02-15 for more information about Git hook fixes.

Hooks can be enabled again by a configuration on the security page.

Added a new CLI and HTTP Endpoint to force the checkout of all bundle storage (BEE-23466)

The new CLI casc-check-out-bundles and HTTP endpoint ${JENKINS_URL}/casc-bundle/check-out have been added to force checkout the CasC bundles from all bundle storage. Refer to Configuration as Code (CasC) CLI and Configuration as Code (CasC) HTTP API.

Added node port information to the controllers StatefulSet (BEE-24058)

Added node port and node name information to the StatefulSet controller pods. The information was added in the form of environment variables. The environment variables are:

  • JNLP_NODE_PORT - identifies the node port.

  • JNLP_NODE_NAME - identifies the node name upon which the pod was started.

This information can also be used to help create dynamic TCP node port connections (for example, in the JCasC configuration).

ARM64 support for container images (BEE-17738)

CloudBees CI on modern cloud platforms and CloudBees CI on traditional platforms now have container images that can be run on ARM 64-bit architecture systems.

Resolved issues

The error message is vague when a flow node cannot be loaded (BEE-6087)

The error message now states that a build cannot be resumed due to an unclean Jenkins shutdown.

Unable to delete external agents service (BEE-24211)

The external agents service could not be deleted even after deactivating the Allow external Agents option and restarting the controller

This issue has been resolved.

Delayed reconnection of multiple managed controller to operations center on startup (BEE-24081)

Reconnecting multiple managed controller instances to the operations center at startup was delayed with the creation of Kubernetes informers for the controllers.

This process is now managed asynchronously and no longer delays the connection at startup time.

The "User activity has been monitored since" message shows the time of the oldest user activity, which is confusing (BEE-8175)

This message has been removed as it is no longer relevant.

Cannot create RBAC groups when using the SAML Security Realm (BEE-27392)

When using the SAML Security Realm, creating RBAC groups would fail with the No valid crumb was included in request error.

This occurred due to an issue in the SAML plugin that has now been fixed.

Websocket agent disconnection with possible deadlock on agent side (BEE-26989)

Static agents using websockets would occasionally disconnect and then not reconnect.

A deadlock was removed to ensure static agents are able to reconnect when disconnected.

Known issues

Sandboxed Groovy scripts, including Pipelines, that use the @Field annotation to declare fields with a type other than Object and do not provide an initial value for the field fail to compile.

The Sandboxed Groovy scripts, including Pipelines, that use the @Field annotation to declare fields with a type other than Object and do not provide an initial value for the field fail to compile. You should define an initial value for any fields that are declared using the @Field annotation, or change their declared type to Object.

For example, the following fields cause the script to fail to compile:

  • @Field String myField1

  • @Field Integer myField2

To resolve this, provide an initial value as in the following examples:

  • @Field String myField1 = null

  • @Field Integer myField2 = 0

You can also declare the fields as type Object as in the following examples:

  • @Field def myField1

  • @Field Object myField2

This is being tracked as JENKINS-69899.

Jira Plugin removed from CAP (BEE-22980)

The Jira Plugin has been removed from the CloudBees Assurance Program (CAP).

JIRA Integration For Blue Ocean Plugin removed from CAP (BEE-23090)

The JIRA Integration For Blue Ocean Plugin has been removed from the CloudBees Assurance Program (CAP).

CloudBees Docker Build And Publish Plugin removed from CAP (BEE-22981)

The CloudBees Docker Build And Publish Plugin has been removed from the CloudBees Assurance Program (CAP).

Mecurial Plugin removed from CAP (BEE-22979)

The Mecurial Plugin has been removed from the CloudBees Assurance Program (CAP).

MSBuild Plugin removed from CAP (BEE-22978)

The MSBuild Plugin has been removed from the CloudBees Assurance Program (CAP).

Duplicate Pipeline Template Catalogs in the Configuration as Code jenkins.yaml file on each instance restart (BEE-12722)

If a Pipeline Template Catalog is configured in the CasC jenkins.yaml file and the id property is not defined, the catalog is duplicated on each instance restart and in the exported CasC configuration.

Upgrade notes

Java 11 is now required

Beginning with the September release, Java 11 is now required to run CloudBees CI. It is not possible to run the operations center, the controllers, or agents on Java 8 any longer. Java Web Start is no longer supported for inbound agents.

For more information, refer to Migrate to Java 11.

When you upgrade to Java 11, you must update your Java garbage collection arguments (BEE-16018)

Garbage collection has been updated in Java 11. Many of the previously recommended arguments are no longer supported. When you upgrade your JDK to Java 11, you must also update your garbage collection configuration. Using unsupported Java arguments will result in startup failure.

End of life announcement (BEE-23004)

After assessing the viability of our supported plugins, CloudBees will no longer support the following plugins:

  • CloudBees Docker Build and Publish

  • Jira

  • JIRA Integration For Blue Ocean

  • Mercurial

  • MSBuild

  • Promoted Builds

These plugins have been removed from the CloudBees Assurance Program (CAP). This end-of-life announcement allows CloudBees to focus on driving new technology and product innovation, as well as maintaining existing products that are actively used by customers.

If you installed any of these plugins using a Configuration as Code bundle via the plugins.yaml file, you must include them in the plugin catalog to continue using them. Refer to Installing non-CAP plugins with plugin catalogs.

For more information regarding this end-of-life announcement, please contact your Customer Success Manager.

Migration to Jakarta Mail (BEE-22565)

The CloudBees Nodes Plus plugin and the Operations Center Server plugin were updated to use jakarta.mail instead of javax.mail. This migration may break existing scripts that relied upon javax.mail. You may need to recreate any broken scripts.