| Server IP : 185.143.234.130 / Your IP : 185.215.232.195 Web Server : LiteSpeed System : Linux jambul.7ho.st 5.14.0-503.40.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Mon May 5 06:06:04 EDT 2025 x86_64 User : renecafe ( 1327) PHP Version : 8.1.33 Disable Function : show_source, system, shell_exec, passthru, exec, popen, proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib/python3.11/site-packages/clsummary/ |
Upload File : |
# -*- coding: utf-8 -*-
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
from docopt import docopt
from docopt import DocoptExit
from schema import Schema, SchemaError, Or, Use
def parse_cloudlinux_summary_opts(argv):
"""
Parse arguments for cloudlinux-summary command
:param argv: sys.argv
:return cortege: (error_flag, s_message)
"""
# program name
prog_name = "cloudlinux-summary"
docstring = f"""Utility to get Cloudlinux usage statistics
Usage:
{prog_name} [--json] [--send] [--force-collect] [--lve-id <int>] [--async]
{prog_name} status [--json]
{prog_name} rpm-packages [--json] [--lve-id <int>] [--send] [--force-collect]
{prog_name} get-remote [--json] [--lve-id <int>]
{prog_name} enable [--json] [--lve-id <int>]
{prog_name} disable [--json] [--lve-id <int>]
{prog_name} enable-rpm [--json]
{prog_name} disable-rpm [--json]
{prog_name} (-h | --help)
Options:
--json Return data in JSON format.
--send Send summary to the CloudLinux server
--force-collect Ignore global settings.json when collecting statistics
--lve-id <int> LVE for summary script. For internal use only.
--async Start background process collecting statistics, return immediately
-h, --help Show this help message and exit
"""
try:
args = docopt(docstring, argv)
except DocoptExit:
s_error_string = 'ERROR: Invalid parameter passed'
return False, s_error_string
s = Schema({
"get-remote": bool,
"rpm-packages": bool,
"status": bool,
"enable": bool,
"disable": bool,
"enable-rpm": bool,
"disable-rpm": bool,
"--json": bool,
"--send": bool,
"--force-collect": bool,
"--help": bool,
"--lve-id": Or(Use(int), None),
"--async": bool,
})
try:
args = s.validate(args)
status = True
except SchemaError as e:
args = str(e)
status = False
return status, args