Skip to content

Migrate entities

Migrate entities from earlier versions to Taipy 3.0

Taipy 3.0 provides a CLI option to update entities from older Taipy versions to 3.0. It is recommended to update the Taipy application code to Taipy 3.0 before executing the entity migration.

Supported Taipy versions

The migration supports Taipy 2.0 or newer.

Migrate entities

The required argument of the 'migrate' CLI is --repository-type, which first accepts one of the three following values: "filesystem" and "mongo". Each repository type can be followed by additional arguments:

  • filesystem can be followed by the path to the filesystem folder that holds your Taipy application data. It corresponds to the "storage_folder" attribute in the configuration "CORE" section. If not provided explicitly, the default value is ".data" in the application root directory.
  • mongo can be followed by the credentials to access the mongo database that holds your Taipy Application data. The credentials must follow the order: "host", "port", "username", and "password". The default values are "localhost", "27017", and no username and password respectively.

To display the help section of taipy migrate CLI, you can run the taipy help migrate command. Alternatively, you can use the --help or -h options by running taipy migrate --help or taipy migrate -h.

$ taipy help migrate
usage: taipy migrate [-h] --repository-type REPOSITORY_TYPE [REPOSITORY_TYPE ...] [--skip-backup]
                     [--restore] [--remove-backup]

options:
  -h, --help            show this help message and exit
  --repository-type REPOSITORY_TYPE [REPOSITORY_TYPE ...]
                        The type of repository to migrate. If filesystem, a path to the
                        database folder should be informed. In the case of MongoDB host,
                        port, user, and password must be informed, if left empty it is assumed
                        default values
  --skip-backup         Skip the backup of entities before migration.
  --restore             Restore the migration of entities from the backup folder.
  --remove-backup       Remove the backup of entities. Only use this option if the migration was
                        successful.

To migrate the entities of a Taipy application with a filesystem repository. We can run the following command:

$ taipy migrate --repository-type filesystem .data

Where .data is the path to the directory that holds the Taipy application data.

To migrate the entities of a Taipy application with a mongo repository. We can run the following command:

$ taipy migrate --repository-type mongo localhost 27017 username password

Where the arguments are the credentials to access the mongo database that holds the Taipy application data.

Info

Once executed, the structure of all entities in the repository will be changed to follow the data model of Taipy 3.0. You should see an informative message when the process is done.

Backup and restore entities

By default, the migration process creates a backup of the entities before migrating them. To skip the backup process, you can use the --skip-backup option.

$ taipy migrate --repository-type filesystem .data --skip-backup

However, it is recommended to create the backup and test your application in a Taipy 3.0 environment so that you can restore the entities later in case of any issues.

To restore the entities from the backup folder, you can use the --restore option. This option will restore the entities from the backup folder and remove the backup folder.

$ taipy migrate --repository-type filesystem .data --restore

If your application is fully tested and working in Taipy 3.0, you can remove the backup folder by using the --remove-backup option.

$ taipy migrate --repository-type filesystem .data --remove-backup

Info

When using the --restore and --remove-backup options, the path provided to the repository type is the actual data path, not the backup folder path. Taipy will detect the backup folder and act accordingly.