Current File : //opt/cloudlinux/venv/bin/lvestats_config_reader.py |
# coding: utf-8
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
import argparse
import sys
import json
from lvestats.plugins.generic.statsnotifier import get_stats_notifier_parameters
from clcommon.utils import is_user_present
SUPPORTED_PARAMS = ['notification_allowed']
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Tool for getting parameters from config')
parser.add_argument('-u', '--user', required=True, help='Specify username')
parser.add_argument('parameter', help='Parameter to read',
choices=SUPPORTED_PARAMS)
args = parser.parse_args()
target_user = args.user
if not is_user_present(target_user):
print(json.dumps({'error': f'No such user {target_user}'}))
sys.exit(-1)
try:
result = get_stats_notifier_parameters(target_user)
print(json.dumps({args.parameter: result}))
sys.exit(0)
except Exception as e:
print(json.dumps({'error': str(e)}))
sys.exit(-1)