| Server IP : 46.245.81.90 / Your IP : 216.73.216.133 Web Server : Apache System : Linux server3ir.xdlhost.com 4.18.0-553.30.1.lve.el8.x86_64 #1 SMP Tue Dec 3 01:21:19 UTC 2024 x86_64 User : gmparts ( 1037) PHP Version : 8.1.34 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib/python3.11/site-packages/ssa/configuration/ |
Upload File : |
import json
from urllib.request import urlopen
from schema import Schema
from .parser import SSAConfigParser
from .validation import validate
from ..internal.exceptions import SSAError
def load_parser() -> SSAConfigParser:
"""
Create parser and load configuration
:return: parser
"""
conf = SSAConfigParser()
conf.read_ssa_conf()
return conf
def load_validated_parser() -> SSAConfigParser:
"""
Create parser, load configuration, validate it
:return: parser
"""
conf = load_parser()
_ = validate(dict(conf.items()))
return conf
def load_configuration() -> dict:
"""
Load and validate configuration
"""
conf = load_parser()
return validate(dict(conf.items()))
def load_tunables(external_source: str, scheme: Schema) -> dict:
"""
Load values from remote JSON config or
default values in case of troubles
"""
cfg_location = f"https://1.mirror.ir.cdn.mycache.org/cloudlinux/sources/da/{external_source}"
try:
with urlopen(cfg_location) as cfg:
return validate(json.load(cfg), scheme)
except (OSError, json.JSONDecodeError, SSAError):
return validate(dict(), scheme)