50 lines
986 B
Python
50 lines
986 B
Python
"""
|
|
cli.config - vxSDK configuration interface
|
|
"""
|
|
from core.logger import log
|
|
from core.config import config
|
|
|
|
__all__ = [
|
|
'__VXSDK_MODULE_META__',
|
|
'cli_validate',
|
|
'cli_parse',
|
|
]
|
|
|
|
#---
|
|
# Public
|
|
#---
|
|
|
|
__VXSDK_MODULE_META__ = (
|
|
['config'],
|
|
"vxSDK configuration module",
|
|
r"""vxsdk-configuration
|
|
VxSDK configuration and options
|
|
|
|
USAGE:
|
|
vxsdk config [<options>]
|
|
|
|
DESCRIPTION:
|
|
Change / customise the vxSDK behaviour
|
|
"""
|
|
)
|
|
|
|
|
|
def cli_validate(name):
|
|
""" validate the module name """
|
|
return name in __VXSDK_MODULE_META__[0]
|
|
|
|
def cli_parse(argv):
|
|
""" Config subcommand entry """
|
|
if '--help' in argv or '-h' in argv:
|
|
log.user(__VXSDK_MODULE_META__[2])
|
|
return 0
|
|
if len(argv) == 2:
|
|
log.user(config.get(argv[1]))
|
|
return 0
|
|
if len(argv) == 3:
|
|
if old := config.set(argv[1], argv[2]):
|
|
log.user(f"previous value = {old}")
|
|
return 0
|
|
log.error(__VXSDK_MODULE_META__[2])
|
|
return 84
|