# 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)