/opt/cloudlinux/venv/lib/python3.11/site-packages/clselect
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/clselect/clselectctlpython.py (52006B)
# -*- coding: utf-8 -*-
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
from __future__ import print_function
from __future__ import absolute_import
from __future__ import division
import getopt
import glob
import os
import re
import shutil
import sys
import pwd
import fnmatch
import secureio
import traceback
import requests
import requests.packages.urllib3.exceptions as urllib_exceptions # pylint: disable=E0401
from packaging.version import Version
from requests.exceptions import ConnectionError
from future.utils import iteritems
from . import clpassenger
from . import clselectctl
from . import utils
import cldetectlib as detect
from clcommon.cpapi import userdomains, docroot, cpusers, CP_NAME
from clcommon.cpapi.cpapiexceptions import NoDomain, NotSupported
from clcommon.utils import mod_makedirs
from .clselectpython.apps_manager import ApplicationsManager, PythonAppFormatVersion, get_venv_rel_path
from .clselectexcept import ClSelectExcept, BaseClSelectException
from .clselectprint import clprint
from .clselectpythonuser import extensions, environments, interpreters
from .baseclselect import APP_STARTED_CONST, APP_STOPPED_CONST
DEFAULT_STARTUP_FILE = "passenger_wsgi.py"
DEFAULT_APP_STATE = "started"
DEFAULT_APP_ENTRYPOINT = "application"
WSGI_TEMPLATE = r"""import imp
import os
import sys
sys.path.insert(0, os.path.dirname(__file__))
wsgi = imp.load_source('wsgi', '%s')
application = wsgi.%s
"""
WSGI_TEMPLATE_PY12_PLUS = r"""import importlib.machinery
import importlib.util
import os
import sys
sys.path.insert(0, os.path.dirname(__file__))
def load_source(modname, filename):
loader = importlib.machinery.SourceFileLoader(modname, filename)
spec = importlib.util.spec_from_file_location(modname, filename, loader=loader)
module = importlib.util.module_from_spec(spec)
loader.exec_module(module)
return module
wsgi = load_source('wsgi', '%s')
application = wsgi.%s
"""
_CONFIGURABLE_WSGI_TEMPLATE = r"""import os
import sys
sys.path.insert(0, os.path.dirname(__file__))
def %s(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/plain')])
message = 'It works!\n'
version = 'Python v' + sys.version.split()[0] + '\n'
response = '\n'.join([message, version])
return [response.encode()]
"""
WSGI_PATTERN = re.compile("imp\.load_source\(.+, '(?P