ok
Direktori : /opt/cloudlinux/venv/lib/python3.11/site-packages/clcommon/ |
Current File : //opt/cloudlinux/venv/lib/python3.11/site-packages/clcommon/clconfig.py |
# -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT # from __future__ import absolute_import from __future__ import division from __future__ import print_function import os CPANEL_CONFIG_PATH = "/var/cpanel/cpanel.config" def get_param(path, param): """ Get param from config file :param path: Path to config file :type path: str :param param: Key for param in config file :type param: str """ try: fd = open(path) data = fd.readlines() except (OSError, IOError): return False for line in data: if line.startswith("%s=" % param): fd.close() return (line.strip().split("="))[1] return None def replace_param(path, param, value): """ Replaces config file with path to config file with line param=value :param path: Path to config file :type path: str :param param: Key for param in config file :type key: str :param value: Value for param in config file :type value: str """ new_line = '%s=%s\n' % (param, value) if not os.path.exists(path): # config file is absent with open(path, 'w') as f: f.write(new_line) return # config file present with open(path) as f: data = f.readlines() for i, line in enumerate(data): if line.startswith('%s=' % param): data[i] = new_line with open(path, 'w') as f: f.write(''.join(data)) return # add new line with given param if it wasn't in original config with open(path, 'a') as f: f.write(new_line)