If you skip versions when you upgrade, refer to previous versions of the release notes for any relevant known issues or upgrade notes. The CloudBees supported platforms and CloudBees maintenance lifecycle policies pages contain additional information about what is supported in this release. |
Latest 2.462.2.2
Released: September 4, 2024
To increase our security posture, we now use the distroless variant of Red Hat UBI to reduce the attack surface of our container images.
If you build a derivative container image based on the one that CloudBees provides, it is an incompatible change, and you will need to update it as our images no longer contain a package manager. This is the case for the operations center, the managed controller images, and also agent images.
If you use agent images, tools like which
, vi
, are no longer available. You can use the shell builtin command -v
as an alternative to which
. If you need additional tools for interactive agent debugging, consider using Kubernetes debug containers .
The following Dockerfile
example displays an image extension that adds a new system package.
FROM cloudbees/core-mm AS base FROM registry.access.redhat.com/ubi8 AS build COPY --from=base / /cbroot RUN dnf update -y && \ dnf install --installroot /cbroot -y --setopt=install_weak_deps=False <my-extra-package> && \ dnf clean --installroot /cbroot all FROM base COPY --from=build /cbroot/ .
▼
Modern cloud platforms
Traditional platforms
2.462.1.3 Security release
Released: August 7, 2024
Modern cloud platforms
Traditional platforms
2.452.4.1 Security release
Released: August 7, 2024
Modern cloud platforms
Traditional platforms
2.452.3.2
Released: July 10, 2024
Modern cloud platforms
Traditional platforms
2.452.2.4 Security release
Released: June 26, 2024
Modern cloud platforms
Traditional platforms
2.452.2.3
Released: June 12, 2024
Modern cloud platforms
Traditional platforms
2.452.1.2
Released: May 15, 2024
Modern cloud platforms
Traditional platforms
2.440.3.8 Security release
Released: May 2, 2024
Modern cloud platforms
Traditional platforms
2.440.3.7 Security release
Released: April 18, 2024
Modern cloud platforms
Traditional platforms
2.440.2.1 Security release
Released: March 20, 2024
Modern cloud platforms
Traditional platforms
2.440.1.4 Security release
Released: March 6, 2024
Modern cloud platforms
Traditional platforms
2.440.1.3
Released: February 21, 2024
If you are actively using devoptics
, you must:
-
Not upgrade the
devoptics
plugin to version 2.0 -
Not upgrade CloudBees CI Modern, to 2.440.1.3
-
Not update the JVM to Java 17 if you use CloudBees CI Traditional
If you are not actively using devoptics
, but have it installed:
-
Upgrade to version 2.0 to remove the incompatibility before upgrading CloudBees CI Modern or the JVM for CloudBees CI Traditional or
-
Uninstall the plugin
Prior to this update, the operations center would dynamically change the behavior of exposing a controller based on a runtime lookup to detect if the underlying Kubernetes infrastructure was OpenShift or not. However, this dynamic check could lead to the creation of an Ingress
object for a controller rather than a Route
.
After this update, the type needs to be set when configuring the Kubernetes endpoint. Existing configuration will migrate to auto detect but attempts will be made to replace it with the correct type.
Configuration as Code bundles now need to be updated to specify the concrete type of service exposure method and for Ingress types such as ingressClass
and IngressAnnotations
to be on the ContainerMasterProvisioningDescriptor
.
Example 1. View OpenShift CasC snippet:
masterprovisioning: kubernetes: clusterEndpoints: - id: "myEndpoint" name: "openshift"
▼
becomes:
masterprovisioning: kubernetes: clusterEndpoints: - id: "myEndpoint" name: "openshift" serviceExposure: "openShiftRoute"
▼
Example 2. View Generic Kubernetes CasC snippet:
masterprovisioning: kubernetes: clusterEndpoints: - id: "myEndpoint" ingressAnnotations: |- key1: value1 key2: value2 ingressClass: "myingressclass" name: "kubernetes"
▼
becomes:
masterprovisioning: kubernetes: clusterEndpoints: - id: "myEndpoint" name: "kubernetes" serviceExposure: ingress: ingressAnnotations: |- key1: value1 key2: value2 ingressClass: "myingressclass"
▼
Modern cloud platforms
Traditional platforms
2.426.3.3 Security release
Released: January 24, 2024
Modern cloud platforms
Traditional platforms
2.426.2.2 Security release
Released: December 13, 2023
Removal of unnecessary 'daemonize' dependency in the CloudBees CI traditional RPM.
We have removed the 'daemonize' package dependency from CloudBees CI traditional RPMs for both the Operations center and Controller, as it was not required in most scenarios. This change simplifies installation and upgrades, particularly in environments where access to the Extra Packages for Enterprise Linux (EPEL) repository is restricted.
Modern cloud platforms
Traditional platforms
2.426.1.3 Security release
Released: November 29, 2023
Modern cloud platforms
Traditional platforms
2.426.1.2 Security release
Released: November 15, 2023
Modern cloud platforms
Traditional platforms
2.414.3.8 Security release
Released: October 25, 2023
Modern cloud platforms
Traditional platforms
2.414.3.7 Security release
Released: October 18, 2023
With the 2.414.3.7 release, the following plugins were added to CAP:
-
GitLab API (
gitlab-api
) -
GitLab Branch Source (
gitlab-branch-source
) -
Pipeline Maven Integration (
pipeline-maven
) -
Pipeline Maven API (
pipeline-maven-api
)
If your CasC bundle has any of these plugins in the plugin catalog, they must be removed. Otherwise, your bundle becomes invalid and will not start.
With the 2.414.3.7 release, the following plugin was removed from CAP:
-
Maven Integration (
maven-plugin
)
If this plugin is already installed, it will continue to be installed. If you wish to install this plugin through CasC from the October release onward, it must be included in the CasC bundle’s plugin catalog and in the plugins.yaml
file.
Starting with Kubernetes plugin (version 4029.v5712230ccb_f8) the YAML parsing library was updated to snakeyaml-engine:2.5
which implements YAML specification 1.2.2. In this specification, the YAML merge operator (<<) was removed. Therefore, any usage of the merge operator in pod definitions needs to be removed.
An example of a pod definition using YAML anchors and aliases instead of the merge operator:
apiVersion: v1 kind: Pod spec: containers: - name: maven image: 3.9.4-eclipse-temurin-11 resources: requests: &maven-container-resources cpu: 1500m memory: 3500Mi limits: *maven-container-resources command: - sleep args: - infinity
▼
An example of the result of YAML specification 1.2.2 on a pod definition using anchors and aliases instead of the merge operator:
apiVersion: v1 kind: Pod spec: containers: - name: maven image: 3.9.4-eclipse-temurin-11 resources: requests: cpu: 1500m memory: 3500Mi limits: cpu: 1500m memory: 3500Mi command: - sleep args: - infinity
▼
For more information, refer to YAML version 1.2.
Modern cloud platforms
Traditional platforms
2.414.2.2 Security release
Released: September 20, 2023
CasC Export now escapes variable expressions. However, variable expressions are not replaced when imported, unless a new configuration is set as pass thru.
This fix introduces a breaking change and any bundle using the variable resolution will stop working. To continue to use and resolve variables in your bundle, configure your CloudBees CI instance before loading your CasC bundles. To configure your CloudBees CI instance do one of the following:
-
Enable the Enable or disable the variable resolution in the item creation for administrator setting on the System configuration page.
-
Configure the
cascItemsConfiguration
value in the YAML file.
For more information, refer to Creating items with CasC for controllers or Creating items with CasC for the operations center.
Modern cloud platforms
Traditional platforms
2.414.1.4
Released: August 28, 2023
Modern cloud platforms
Traditional platforms
2.401.3.4 Security release
Released: August 16, 2023