Server IP : 192.64.118.117 / Your IP : 3.128.31.200 Web Server : LiteSpeed System : Linux premium56.web-hosting.com 4.18.0-513.24.1.lve.1.el8.x86_64 #1 SMP Thu May 9 15:10:09 UTC 2024 x86_64 User : thecgapy ( 1160) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib/python3.11/site-packages/setoptconf/source/ |
Upload File : |
from configparser import ConfigParser from ..setting import ListSetting from ..util import csv_to_list from .filebased import FileBasedSource __all__ = ("ConfigFileSource",) class ConfigFileSource(FileBasedSource): def __init__(self, *args, **kwargs): self.section = kwargs.pop("section", None) super(ConfigFileSource, self).__init__(*args, **kwargs) def get_settings_from_file(self, file_path, settings, manager=None): section = self.section or manager.name.lower() parser = ConfigParser() parser.read(file_path) if not parser.has_section(section): return None for setting in settings: if parser.has_option(section, setting.name): opt = parser.get(section, setting.name) if isinstance(setting, ListSetting): setting.value = csv_to_list(opt) else: setting.value = opt return settings