I
think, your statement that OpenUpgrade doesn't work any more is not
correct. The accepted answer in the referred question is a mistake.
The
script 'migrate.py' is obsolete and it is stated in the
documentation. This script was just to simplify. However, the system
itself works: checked it about 2 months ago. The coverage is not
full, but for now 11>12 is more or less Okay.
The
point is in your understanding of OpenUprgade. OpenUpgrade is the
Odoo code with migration scripts inside each module. As soon as you
launched this code with your old database, it is updated to the newer
version and simultaneously, migration is done (fields are converted,
data is removed).
As
for alternatives:
You
can ask Odoo to migrate your database (surely for remuneration)
You
can export/import tables (really time-consuming and error-prone)
You can fix the errors manually by yourself as you launched the database on the newest code (requires much in understanding Odoo and much time)
There
is no big sense to duplicate OpenUpgrade features. The result might be not better, but costs would be
significant.
How to use OpenUpgrade
Follow the steps stated in the 'Manual migration': https://doc.therp.nl/openupgrade/migration_details.html. If to simplify:
Clone OpenUpgrade of the version you want to migrate (e.g. 12.0)
Make your database backup (e.g. of the version 11)
Launch Odoo using OpenUpgrade code (as you launch it with just Odoo code) and with your database (-d [Your Database])
Follow logs > fix errors and process warnings; re-launch if something is changed.
If everything is fine, the updated database is a migrated one. Launch standard Odoo for this database (I recommend to do so with updating base or all modules)