Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1104 Tampilan

Hi all,


I am trying to upgrade to Odoo 17 (or 18?) on my Ubuntu 24.04 LTS server, but no matter what approach I take, I seem to run into errors that possibly relate to python OpenSSL. At a guess, perhaps the version of pyOpenSSL that ships with 24.04 latest (21.0.0) is not compatible (details of pyOpenSSL & OpenSSL3 versions below - these are the stock versions with 24.04).


Odoo was originally installed via the apt method, so upgrading outside of that I would wager would be very difficult, although I have tried a few different methods to upgrade. Here is my rough process:

  1. Backup databases
  2. Stop odoo
  3. Upgrade to odoo 17 packages ala: 
    1. wget -O -<odoo key> | sudo apt-key add -
    2. echo "deb <deb resource url>./" | sudo tee /etc/apt/sources.list.d/odoo.list
    3. sudo apt update
    4. sudo apt install odoo
  4. Use OpenUpgrade to upgrade the db (as user odoo) ala:
    1. git clone --branch=17.0 --depth=1 --single-branch https://github.com/OCA/OpenUpgrade.git openupgrade_17
    2. pip3 install openupgradelib
    3. vim /etc/odoo/odoo.conf and add in the openupgrade modules to the addons_path.
    4. run the db upgrade: odoo -c /etc/odoo.conf --database=odoo --upgrade-path=/var/lib/odoo/openupgrade_17/openupgrade_scripts/scripts --load=base,web,openupgrade_framework --update all --stop-after-init
  5. start odoo

Depending upon what version of events I do, step 4d may even complete fairly painlessly.


But then it all goes off a cliff, for example the ssl error on startup looks like this:

ERROR ? odoo.service.server: Failed to load server-wide module `base`. Traceback (most recent call last): File "/usr/lib/python3/dist-packages/odoo/service/server.py", line 1262, in load_server_wide_modules odoo.modules.module.load_openerp_module(m) File "/usr/lib/python3/dist-packages/odoo/modules/module.py", line 395, in load_openerp_module __import__(qualname) File "/usr/lib/python3/dist-packages/odoo/addons/base/__init__.py", line 5, in <module> from . import models File "/usr/lib/python3/dist-packages/odoo/addons/base/models/__init__.py", line 21, in <module> from . import ir_mail_server File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_mail_server.py", line 19, in <module> from OpenSSL import crypto as SSLCrypto File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module> from OpenSSL import crypto, SSL File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1579, in <module> class X509StoreFlags(object): File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1598, in X509StoreFlags NOTIFY_POLICY = _lib.X509_V_FLAG_NOTIFY_POLICY AttributeError: module 'lib' has no attribute 'X509_V_FLAG_NOTIFY_POLICY'.


PyOpenSSL vs OpenSSL stock versions in Ubuntu 24.04:

$ pip show pyOpenSSL Name: pyOpenSSL Version: 21.0.0 Summary: Python wrapper module around the OpenSSL library Home-page: https://pyopenssl.org/ Author: The pyOpenSSL developers Author-email: cryptography-dev@python.org License: Apache License, Version 2.0 Location: /usr/lib/python3/dist-packages Requires: Required-by: 

$ openssl version OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)


Any help much appreciated!

Avatar
Buang