Upgrade to Python 3 branch

Is it possible to upgrade from python 2.7.5 to python 3 without breaking the install.
I am using Centos 7 and it what installed a year ago shipped with this old Python

You can create snapshot and run CyberPanel upgrade, if something goes wrong you can restore old snapshot and contact our support.

However, upgrading will get you Python 3.

I already did:

sh <(curl https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh || wget -O - https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh)

but python ist still 2. 7.5

Thats the only official way.

You can either set up a new CyberPanel instance and transfer the sites, or engage our team for paid support.

Is there a hacky way to set up python 3.7 or 3.10.5 now?
For me it says I got 3.6.8 and not even django works unless I get 3.7

I didn’t really put it all together until now… but I seem to be experiencing the same python3.7 issue that @Master3395 mentions.

I’ve been having a hell of a time with cyberpanel & cloudlinux :confused:

# cagefsctl
Traceback (most recent call last):
  File "/usr/sbin/cagefsctl", line 22, in <module>
    import cagefsctl
  File "/usr/share/cagefs/cagefsctl.py", line 15, in <module>
    from clcommon.lib.cledition import is_ubuntu
  File "/opt/alt/python37/lib/python3.7/site-packages/clcommon/lib/cledition.py", line 17, in <module>
    from jwt import exceptions
  File "/opt/alt/python37/lib/python3.7/site-packages/jwt/__init__.py", line 19, in <module>
    from .api_jwt import (
  File "/opt/alt/python37/lib/python3.7/site-packages/jwt/api_jwt.py", line 11, in <module>
    from .api_jws import PyJWS
  File "/opt/alt/python37/lib/python3.7/site-packages/jwt/api_jws.py", line 10, in <module>
    from .algorithms import (
  File "/opt/alt/python37/lib/python3.7/site-packages/jwt/algorithms.py", line 16, in <module>
    from cryptography.hazmat.primitives.serialization import (
  File "/opt/alt/python37/lib64/python3.7/site-packages/cryptography/hazmat/primitives/serialization/__init__.py", line 6, in <module>
    from cryptography.hazmat.primitives._serialization import (
  File "/opt/alt/python37/lib64/python3.7/site-packages/cryptography/hazmat/primitives/_serialization.py", line 13, in <module>
    class Encoding(utils.Enum):
AttributeError: module 'cryptography.utils' has no attribute 'Enum'

@usmannasir It seems that CyberPanel still uses a way too old python3 version.

python --version
Python 3.6.8 Dec. 24, 2018

The minimum version that often now are needed for many applications:

python --version
Python 3.7.0 June 27, 2018

Current stable version:
3.12.2 Feb. 10, 2023
3.12.2