Migrating to 1.0.0
Migration Guide
Here you can find the needed steps to upgrade your current Witboost installation to v1.0.0. Please refer to the release notes for a detailed list of changes and improvements. This guide is intended for users who are currently running Witboost version 0.5.0 or earlier and wish to upgrade to version 1.0.0.
Follow these steps to migrate from the previous version to Witboost version 1.0.0:
Backup Your Data
Before starting the migration, ensure you have a complete backup of your database and configuration files.
Update Dependencies
Ensure all the dependencies in the Helm files are updated to their compatible versions for 1.0.0. Refer to the published Helm chart for details.
Upgrade Steps
Core
- If you want to enable Blueprints, apart from the configurations that you can check in the documentation, you need to add "Blueprint" among the
catalog.rules.allow
elements, like:
catalog:
rules:
- allow:
- Component
- API
- Resource
- Template
- System
- Domain
- Group
- User
- Location
- Release
- Blueprint
-
The URLs for the provisioning coordinator and the marketplace plugin must be updated to not include the API version anymore, so simply change the configured URL from
http://datamesh-provisioningcoordinator.datamesh-provisioningcoordinator:8088/datamesh.provisioningcoordinator/v1
to
http://datamesh-provisioningcoordinator.datamesh-provisioningcoordinator:8088/datamesh.provisioningcoordinator
and do the same for the marketplace plugin URL.
-
Check your existing templates. Since we introduced the new
input.sourcePath
field in the publish phase (which is a new reserved keyword), check if your existing templates are already using this field for other reasons, since they could be not working anymore. -
If you cannot see the data sharing agreement card anymore in the marketplace, it could be because we aligned the field used to display that to
dataSharingAgreement
instead ofdataSharingAgreements
. You can change this default behaviour, if needed, by simply changing the UI configuration "mesh.marketplace.ui.outputPortPage.dataSharingAgreementField" and setting it to the name of the field you are currently using for your output ports.
Coordinator
- Specific provisioner interface specification has changed, introducing endpoint versions and additional endpoints (like async validation),
to maintain retrocompatibility the coordinator calls "version-less" endpoint. These endpoints will be deprecated in future versions though.
New functionalities (eg. async validation) requires the implementation of the specific provisioner respect the new interface-specification.yaml
In case there is the will to upgrade specific provisioners endpoints to the new interface specification, it is necessary to set this configuration inside
the coordinator
application.conf
provisioning-coordinator {
specific-provisioner-path-prefix = "v1"
...
}
All the specific provisioners need to adhere to the same interface-specification in order for this to work.