Skip to main content
Version: 8.2411.x.x RR

November 2023 rolling release (RR) upgrade guide

Overview

The Nevis rolling release version 7.2311.0 is released on 15. November 2023.

Important information

The Nevis RR version 7.2311.0 is a major upgrade requiring a new Java runtime version and including many notable breaking changes.

To ensure a smooth upgrade, read this document carefully including all the linked information and release notes.

We recommend planning ahead, reserving ample time for the upgrade, and extensive testing of all use cases.

To facilitate the upgrade we provide a RR version in August 2023 with an extended support period compared to regular RR releases.

Java 17

Nevis has upgraded the runtime of all Java-based components from Java 8 to Java 17. Starting with the November RR Java 8 is no longer supported in new releases on the rolling release life cycle.

New Nevis version scheme

Nevis has unified the versioning scheme for all newly released components on the rolling release life cycle. The version format is {Major}.{Minor}.{Patch}.{Build}:

  • Major: incremented on the RR life cycle after a new LTS is released
  • Minor: the year and month in yyMM format at the time of the cluster release
  • Patch: incremented with every patch
  • Build: incremented with every build

You can now easily identify compatible Nevis components with the new Nevis versioning scheme. The Nevis version of the November 2023 rolling release is 7.2311.0.x.

Exceptions

The following Nevis components and releases continue to use the current versioning scheme:

  • The Nevis Access App and Nevis Mobile Authentication SDK
  • The LTS-21 and the August RR with extended life cycle

Upgrade guide

Java 17 upgrade

The Java 17 runtime environment is already included for Kubernetes-based installations in the Nevis images (currently java-17-amazon-corretto) and for appliance-based installations in the nevisAppliance image (currently: java-17-openjdk). No further action is required to upgrade the Java version.

For RPM-based installations, you need to install a Java-17-compatible Java runtime environment (JRE) and update your environment to use the new Java version. You can achieve this for example by using update-alternatives --config java. Also, double-check that ${JAVA_HOME} is pointing to the correct location or java -version returns the expected version.

Notable breaking changes

OpTrace is replaced by OpenTelemetry

The OpTrace logging based on jcan-log and jcan-optrace has been removed from all Nevis components. It is replaced by OpenTelemetry.

Learn more on how to set up OpenTelemetry

Custom AuthStates

Custom AuthStates compiled with Java 8 are no longer supported. Besides upgrading to Java 17, in nevisAuth a major cleanup has been done, most dependencies are updated and there are breaking changes in the nevisAuth API. For this reason, existing custom AuthStates are incompatible with the November 2023 rolling release.

caution

You need to recompile custom AuthStates using Java 17 and the latest nevisAuth artifacts of version 7.2311.x.

Learn more on how to upgrade your custom AuthStates.

Groovy script states

The Groovy library responsible for running Groovy ScriptStates is upgraded to version 4.x from the previous 3.x. It is recommended to revisit your Groovy ScriptStates for breaking changes.

Learn more about what changed with Groovy 4 in the release notes.

NevisAdmin4 patterns

Existing nevisAdmin4 pattern versions based on Java 8 and Groovy 3.x are no longer supported with nevisAdmin4 version 7.2311.0.x. With the November 2023 RR there is no backward compatibility. You need to use the latest nevisAmin4 pattern versions based on Java 17 and Groovy 4.x.

OOCD configuration

The file-based OODC implementation in nevisAuth has been removed. All production environments need to migrate to the SQL-based OOCD implementation.

Learn more about the changes in OOCD.

Release notes

Read all the Nevis component release notes carefully and update your configurations based on the changes.