forked from uncloud/uncloud
41 lines
1.3 KiB
Python
Executable file
41 lines
1.3 KiB
Python
Executable file
from uncloud.cli.helper import make_request, get_otp_parser
|
|
from uncloud.common.parser import BaseParser
|
|
|
|
|
|
class UserParser(BaseParser):
|
|
def __init__(self):
|
|
super().__init__('user')
|
|
|
|
def files(self, **kwargs):
|
|
self.subparser.add_parser('files', parents=[get_otp_parser()], **kwargs)
|
|
|
|
def vms(self, **kwargs):
|
|
self.subparser.add_parser('vms', parents=[get_otp_parser()], **kwargs)
|
|
|
|
def networks(self, **kwargs):
|
|
self.subparser.add_parser('networks', parents=[get_otp_parser()], **kwargs)
|
|
|
|
def add_ssh(self, **kwargs):
|
|
p = self.subparser.add_parser('add-ssh', parents=[get_otp_parser()], **kwargs)
|
|
p.add_argument('--key-name', required=True)
|
|
p.add_argument('--key', required=True)
|
|
|
|
def get_ssh(self, **kwargs):
|
|
p = self.subparser.add_parser('get-ssh', parents=[get_otp_parser()], **kwargs)
|
|
p.add_argument('--key-name', default='')
|
|
|
|
def remove_ssh(self, **kwargs):
|
|
p = self.subparser.add_parser('remove-ssh', parents=[get_otp_parser()], **kwargs)
|
|
p.add_argument('--key-name', required=True)
|
|
|
|
|
|
parser = UserParser()
|
|
arg_parser = parser.arg_parser
|
|
|
|
|
|
def main(**kwargs):
|
|
subcommand = kwargs.pop('user_subcommand')
|
|
if not subcommand:
|
|
arg_parser.print_help()
|
|
else:
|
|
make_request('user', subcommand, data=kwargs)
|