Mini Shell
"""cpapi3 functions"""
from typing import Union
from ._base import CpAPIBase
class Cpapi3(CpAPIBase):
"""cpapi3 functions"""
__module__ = 'cpapis'
def __init__(self):
if self._can_exec('/usr/bin/cpapi3'):
super().__init__('/usr/bin/cpapi3')
else:
super().__init__('/usr/local/cpanel/bin/cpapi3')
def __call__(
self,
module: str,
user: Union[str, None] = None,
args: Union[dict, None] = None,
timeout: Union[float, None] = None,
):
"""Query cpapi3
Args:
module: the cpapi3 module to use in format x::y
user: ``--user`` arg to use
args: key-vals to send to cpapi3
timeout: timeout for the cpapi3 command in secs
"""
return self._exec(
module_args=module.split('::'),
user=user,
args=args,
timeout=timeout,
)
Zerion Mini Shell 1.0