Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Odoo 16.0 + OCA Wrapper [18.0 TKLDEV-bookworm][unstable] #26

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

marcos-mendez
Copy link

Fixed everything was not working and inserted:

OCA Modules and Localization support

Custom DB Name

Production and Demo Data Fix

Hope this helps the community

@JedMeister
Copy link
Member

Thanks for this @marcos-mendez - From a glance it mostly looks good, but I'll need to tweak it a bit to handle non-interactive pre-seeded launch (e.g. from the TurnKey Hub). I'll try to get that done this week so I can build the updated Odoo.

@marcos-mendez
Copy link
Author

marcos-mendez commented Feb 7, 2024 via email

@JedMeister
Copy link
Member

JedMeister commented Feb 7, 2024

Hi @marcos-mendez,

I need an OpenSource Alternative do TKLBAM for working in the
migration of Odoo to newer version an tkl-odoo versions.

FWIW TKLBAM IS open source - although using it without the Hub requires you to generate your own profile. Having said that, all the pieces are there and I'd be happy to assist you to put it together.

I got stucked on Odoo 14 and de migration process to a 16v is not that
trivial. HAving to tweak a lot of things.

Having said the above (re TKLBAM), even with a custom profile, I still don't think it's going to give you what you are after. Without either pre-scripting an Odoo14 -> Odoo16 migration and/or manually migrating, it won't just automagically migrate your data to a newer version of Odoo. 😞

Also Python3.7 dependent software got just out offline as this is EOL for
python3.7 and im having to migrate to docker if i don't manage to do this
migration my self to another LXC/TKL project

If you're using TurnKey v16.x (based on Debian 10/Buster) currently - then the core OS (inc python 3.7) is covered by the Debian LTS team until mid year. So whilst Python upstream is EOL, it's still supported in Debian. AFAIU the bigger issue would be support for Odoo v14.x itself wouldn't it?

Perhaps I'm missing something, but I'm also not sure how a Docker container would help here? Whether you use TurnKey or a Docker container, you'd still need to migrate the DB and custom files, etc wouldn't you? And you'd still have Odoo14 - which as I understand it is no longer supported by upstream?!

FWIW the v17.1 TKL appliance includes Odoo 14.x - installed from Debian repos (so some paths may be different - but I wouldn't imagine that it would be too hard?). FYI, there also seems to be another version in bullseye-backports - but I'm not clear on what advantages/improvements may be included as it appears to be the same upstream version of Odoo?! If the version in main works, I'd be inclined to stick with that.

That includes Odoo v14 too, but AFAIK it's supported by the Debian security team, until August 2024. That's when Debian 11/Bullseye will be moved to LTS and whilst the Odoo package will remain in the repos (possibly not the backport one though?) - support may end there? The LTS team have limited resources, so for a package like Odoo, I suspect that you/your client would want to subscribe to an LTS maintainer (i.e. pay a monthly subscription)- or assist maintaining it yourself if you wanted/needed ongoing support of Odoo v14.x.

But perhaps the extra 6 months of support gives you enough time to migrate the server to Odoo v16.x?

FYI the v17.1 appliance includes Python 3.9 so any custom code you've written may require some minor tweaks - although I imagine it should mostly "just work" (IIRC there wasn't that much difference between python v3.7 & v3.9). As noted above, python is a core system component so I'm sure it would be maintained by the LTS team for the life of the LTS (so until circa mid 2026).

Do you think is an easy to update from buster to bullseye without the pain
of migrating databases manually?

That should be possible. Although like I say, IIRC the Odoo installation itself will be slightly different (Official Debian package using files in /usr/lib etc vs upstream package probably all in /opt). For the OS and most packages - see the Debian docs. Note those docs are fairly exhaustive and personally there's lots of bits I personally skim over. But I only do that with desktop Linux systems; for a production server - especially for a hospital - I would probably do it all as close to the Debian docs as practical.

Personally, whilst it can be a little more involved, I much prefer to migrate data to a new clean server. It's a little more work, but gives you a better, cleaner end result IMO. OTOH a Debian "in place" upgrade is a completely acceptable path.

Note that the TurnKey apt repo will need the updated keys added manually (as well as updating the sources.list & security.sources.list from buster to bullseye). It's pretty easy though and obviously I can assist there.

My experience suggests that a Debian upgrade may be relatively pain free - but I've also had painful experiences, so I'm not completely sure...

Also do you think it can be done in a
script like debian best practices one?

TBH, I'm not 100% sure what you mean by that? I'm not aware of any "best practices" upgrade script that would handle this sort of upgrade?! And even if there was, I'd personally be very wary and wouldn't trust it unless I'd already run it successfully on a clone of the system in question.

Personally I would do it manually - ideally first on a snapshot of your current server first. I would also recommend recording the process and take notes of any custom steps/changes and/or issues you encounter along the way.

If it's installed to bare metal, use a tool such as Clonezilla to image the disk and create a VM from the disk image for the initial "trial" upgrade. Then once you're happy, rerun the same steps on the production system. Alternatively, if it's not installed on bare metal, then you could do it in a separate VM (started from a clone of the prod server) first, and if all goes well, just switch to the new server. If it all goes smoothly, that will save some work - and mean minimal downtime. Either way - if it doesn't go smoothly at least the prod server remains unaffected.

I'm happy to assist where I can, but all things considered TBH I don't see a guaranteed easy path for you. Sorry to be the bearer of bad news. 😢

Having said all that, please feel free to prove me wrong! 😁 I'd rather give you the brutal truth as I see it and have you surprise me, than the opposite...

Take care man and good luck with it all. Hopefully I'll have this new updated appliance ready by early next week, but no promises.

@marcos-mendez marcos-mendez changed the title Odoo OCA Installation Odoo 16.0 + OCA Wrapper [18.0 TKLDEV-bookworm][unstable] Mar 31, 2024
@marcos-mendez
Copy link
Author

Discovered some issues with custom database build for OCA. Still marking this as unstable.

The databasecreation is not triggered automatically as it should. And the odoo.conf gets overwriten by the turnkey-updates.

@marcos-mendez
Copy link
Author

@JedMeister can you push the 18.0 default main image to the tkl repo? I think it will take a longer work to me and the current 18.0 looks like ready to ship as it is. No reason to my work delay the release of the app

Sorry for that man.

@marcos-mendez marcos-mendez marked this pull request as draft April 1, 2024 00:46
@JedMeister
Copy link
Member

Hi Marcos, no worries I'll do that ASAP. It might take a little while for us to publish it as we do the releases in batches of 10 (or more if there are more than 10 ready).

But I'll ensure that it makes it into the next batch.

Take care man and hopefully speak more soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants