What is the recommended upgrade strategy for projects with a version < 5?

We have a lot of projects (30+) and weren’t able to upgrade them all to pimcore 5.0 at the time of the release.

Now we’re upgrading them one by one, but due to the release of more versions this gets more difficult every time.

Usually, we upgrade projects like this:

  1. Upgrade the legacy project to the lates 4.X version
  2. Install a fresh version of the newest pimcore
    3. Migrate the database of the legacy project to the new version
  3. Copy class definitions, assets to the newly installed project
  4. Switch the database of the new project to the one we migrated in step 3
  5. Copy/Migrate all the project code manually

It really helps to use a fresh version of pimcore for the new project. But as new versions are released, it gets more difficult to migrate the database.

What is your upgrade strategy? Is there any easy way to just migrate an old database to the newer version?

Thanks for your thoughts!