Contributors mailing list archives

contributors@odoo-community.org

Browse archives

Avatar

Re: Preparing for Odoo 18

by
Therp, Tom Blauwendraat
- 18/10/2024 11:10:29
On 10/18/24 04:03, Jacob Christ wrote:

> I would like to help improve OpenUpgrade but I don't know how to 

> get started.  If nothing else, I'm happy to test 16 to 17 upgrades as 

> improvements are made.

In one of the previous OCA days, there was a talk about how to get 
started with OpenUpgrade. Might be this one: 
https://www.youtube.com/watch?v=Vx7-PuXCIsY but there could be more.

It seems everybody has their own way of doing things; I think what's 
"common" is to make a "build" for each version and then include 
OpenUpgrade in it (it could be for example a Doodba docker container, or 
one of the other build systems that are around - we use our own 
Doodba-based concoction at https://github.com/sunflowerit/waftlib) and 
then add OpenUpgrade into the build and run odoo -u on each version in 
sequence. Whichever build system you choose, like Graeme says, it's 
handy if gitaggregator is an integral part of it, so that you can easily 
include patch PR's into the build - your own, or ones from others.

With every migration we have done so far there are at least a handful 
errors that you will run into - usually it's a case of the database in 
your data being slightly different than a specific OpenUpgrade script 
expects it to be. It can be all kinds of things, for example it might be 
that on Odoo 14, it was possible to set a financial ledger account to a 
certain type that it should not be, and you changed it, but now 
OpenUpgrade does not cover that specific case. What you can then do is 
either adjust your data on Odoo 14 manually and try the migration again 
from start, or to make a migration script yourself, and either run it as 
a custom script or actually propose it as an addition to OpenUpgrade 
using a PR.

If you're not up to this whole process, what's also a common method for 
instances without a lot of data is to start over with a fresh Odoo 17 
instance and use import/export to get your data across. That's of course 
also laborious but in some cases it can be a good option.


Reference