Skip to main content

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 of dataSharingAgreements. 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.