Migration Guide

Migrating to DB Gene 4.9.1

Breaking Changes

Gateway actuator endpoints restricted to health and info

The Spring Boot Actuator endpoints exposed through the gateway are now restricted to health and info. Previously, all endpoints were exposed (include: "*"), which is not suitable for a service reachable through the public gateway.

⚠️ If your application or monitoring stack relies on other actuator endpoints (metrics, prometheus, env, loggers, etc.) being reachable through the gateway, override the configuration in your project to expose them explicitly:

management:
  endpoints:
    web:
      exposure:
        include: health,info,metrics,prometheus   # adjust to your needs

Endpoints exposed directly by other services (not through the gateway) are not affected.

Notable Changes

Migration to Docker Hardened Images for nginx and RabbitMQ

The nginx and RabbitMQ base images shipped with DB Gene have been migrated to Docker Hardened Images (DHI). DHI brings a reduced CVE surface, distroless or minimal Debian bases, and signed images and SBOMs benefits.

As a consequence:

⚠️ If your Helm values override securityContext.pod for any of the web front end, DBOS console, DBOS documentation, or RabbitMQ, align runAsUser, runAsGroup, and fsGroup with 65532.

Dependency Upgrades

Migrating to DB Gene 4.9.0

Breaking Changes

Improved WebSocket Security

The WebSocket connection now requires a valid, authenticated JWT token on the backend side. On the frontend side, the hard-coded guest/guest user is removed from the JS bundle, and the JWT token is now sent as a query param for WebSocket connections.

⚠️ Custom WebSocket clients must be updated to include a valid JWT bearer token. Connections without a token will be rejected.

Improved authentication for JupyterLab through JupyterHub and Keycloak

DB Gene now uses JupyterHub to authenticate via Keycloak instead of a hardcoded string password. JupyterHub has been added to the Docker Compose files and to the Helm chart.

⚠️ Note that:

Also, when using a Notebook Visualization widget, access must still be granted.

JupyterHub authentication

Notable Changes

Spring upgraded to new major version

Spring Framework has been upgraded to version 7 and Spring Boot to version 4 (see Dependency Upgrades below for precise version numbers). We recommend that you read the migration guide from Spring and check if the custom code of your application needs any changes for working with this newer version. In addition, we recommend that you run your application with the Spring Boot properties migrator once, to ensure that your custom Spring configuration is compatible with this new version of Spring Boot.

During the migration of Gene and DBOS, the following changes were required. We list them to help you if you have the same issues:

Secrets in Helm chart

It is now possible to add any secret in the db-gene Helm chart:

# This is an example for an Anthropic API key, but the values allow to create any secret.

secrets:
- name: anthropic-api-key-secret
  enabled: true
  data:
    api-key: "your-api-key-here"

UI Actions: New confirmation modal

In the configurator of widgets implementing Custom Actions, such as the Scenario List, Job List, or Button widget, a dedicated option now allows showing a confirmation dialog before executing the action. By default, no confirmation is needed.

From the Action Manifest of the Gene Action API, Developers can also define title, messages, and validation button labels with i18n translation keys.

End users can override the default behavior of an action when associating it with a UI element (e.g., toolbar button).

UI Action Confirmation Settings

Deprecations

Deprecation Removals

In the Execution Service:

In the Job Widget:

In the Chart Widget:

Scheduled Removals

The following deprecated classes, attributes, or methods are scheduled for removal in DB Gene 4.11.0.

New Deprecations

No class, attribute, or method has been deprecated in this release.

Dependency Upgrades

Updated Angular dependencies: