Version 2.0.X - Epic Raccoon
Version 2.0.0
Release date : January 2026
Alarms rework
The alarms module was refactored to improve it efficiency. The database format was modified and need to be upgraded with a migration script. The alarms are not compatible with the previous version and a rollback will be complicated.
Warning
The format of the alarm generated during the pre-insertion was changed to Buffered alarms.
MongoDB version changes
MongoDB has been upgraded from 7.0 to 8.0 with 2.0.0 release.
Before upgrading to 2.0.0, the feature version must be set to 7.0.
The current feature version can be checked by running the following command inside the MongoDB container:
$ mongosh --eval "db.adminCommand({getParameter:1,featureCompatibilityVersion:1})"
{ featureCompatibilityVersion: { version: '6.0' }, ok: 1 }
Setting the feature version can be done with:
$ mongosh --eval "db.adminCommand({setFeatureCompatibilityVersion:'7.0'})"
After the update, when OnSphere is stable, the feature version can be updated to the current version:
$ mongosh --eval "db.adminCommand({setFeatureCompatibilityVersion:'8.0'})"
RabbitMq version changes
RabbitMq has been upgraded from 3.13 to 4.1 with 2.0.0 release.
Before upgrading to 2.0.0, all stable feature flag must be enabled.
The feature flag can be checked by running the following command inside the RabbitMq container:
$ rabbitmqctl -q --formatter pretty_table list_feature_flags
Note
All feature flag will be shown even the experimental one.
Enabling all feature flag version can be done with:
$ rabbitmqctl enable_feature_flag all
Note
This will enable all stable feature flag.
After the update, when OnSphere is stable, the feature flag of the new version can be enabled:
$ rabbitmqctl enable_feature_flag all
Complete Overhaul of the Template Generation System
Warning
Run the template clean step before upgrading Composer to ensure old hidden files are removed. The new hidden file check helps prevent edge cases where files might be accidentally deleted.
The previous beta version of the template generation system has been completely reworked. This new version is not backward compatible, and no automated migration tools are available. However, adapting to the new approach is relatively straightforward, thanks to its more intuitive structure and greater flexibility.
This overhaul was driven by the limitations of the earlier design, which made it difficult to address many practical use cases effectively.
The updated system brings a range of advanced features, allowing for the creation of more powerful and adaptable playbooks. Key improvements include enhanced support for conditional logic, modular task definitions, richer inventory handling, and more dynamic template rendering.
BACNet Module
The BACNet module now performs property access validation for configured objects, in compliance with the MBE-CH BACNet profile. If a property is marked as read-only by the BACNet standard but is configured with write access in the module’s configuration, the configuration will be rejected. This ensures strict adherence to the defined property access rights and prevents misconfiguration.
To continue in the direction of the standard, the objectType, objectIndex and property fields of owner.bacnet and output.bacnet are move into a new field object. objectType and objectIndex are renamed to type and instance respectively.
BACNet module is now capable of handling Proprietary object type / property and Proprietary / vendor property.
The BACnet module updated the connection status of remote devices only if at least one owner or output was linked to it. This was a problem in configurations where we just wanted to track the connection status of the BACnet device.
The BACnet notifications had an issue where in some cases they were removed. They are now watching their status correctly and making sure they are staying the recipient list if still active.
Certificate and security
Certificate Revocation List (CRL) is not managed/created anymore by osp-configuration-dispatcher.
Git user configuration
Ssh authorized_keys permanently moved from /git/.ssh/authorized_keys_default to /ssh/authorized_keys. Backward compatibility is ensured and oldest path is still available. See Git user section for more information.
Module supervision
The module supervision values were implicit and could not be used like other values. This version changes that behavior by introducing explicit values that can now be referenced anywhere in the configuration.
Because the previous values were implicit, no automatic patch can migrate them. Manual action is required by creating owner.dispatcher and value.ospp.