Open Salamandar opened 5 months ago
Yes there's an unofficial helper for that somewhere but it would definitely be nice to have some proper core integration
(cf the experimental helper i was thinking about : https://github.com/YunoHost-Apps/Experimental_helpers/tree/master/ynh_handle_app_migration )
OK so here's a plan :
apps.toml
contain the "migration path" (either migrate_to
in the old app or migrate_from
in the new app) and that would be copied in the catalog.json
migrate_to/from
and expose this migration just as an upgradeinstall_path
, and home page tile label changes.Issues I see:
I would prefer a migrate_to
key in the old app's section (also more coherent with the core code) but what about when the old app is moved to graveyard ? Then it's not in the catalog anymore… And the migration is not provided anymore. Also migrate_from
can lead to weird cases if multiple new apps declare this.
How to handle eventual old-app-as-packagingv1 to new-app-as-packagingv2 migrations ? For now we don't have any way to run custom code before the packagingv2 provisionning code. We might need to in case there are tweaks to be run. Maybe not though.
We start to have a number of apps renamed / replaced. It would be nice to have the core support this kind of migration.
etc ?