allow options to the commands

especially -v for frappy
This commit is contained in:
l_samenv
2024-02-23 10:45:34 +01:00
parent d8bb4999dc
commit 0b099bab28
2 changed files with 19 additions and 9 deletions

View File

@ -229,12 +229,12 @@ class FrappyManager(ServiceManager):
env_update['PYTHONPATH'] = os.environ['PYTHONPATH'] = ':'.join(pypathlist)
return start_dir, dict(env, **env_update)
def do_start(self, ins, service=None, cfg='', restart=False, wait=False, logger=None):
def do_start(self, ins, service=None, cfg='', restart=False, wait=False, logger=None, opts=''):
if self.wildcard(ins) is not None:
raise UsageError('no wildcards allowed with %s start' % self.group)
if cfg and not service and len(self.services) != 1:
raise UsageError('need service to start (one of %s)' % ', '.join(self.services))
super().do_start(ins, service, cfg, restart, wait, logger)
super().do_start(ins, service, cfg, restart, wait, logger, opts=opts)
def do_restart(self, ins, service=None, cfg=None, logger=None):
ins_list = super().do_restart(ins, service, cfg, logger)
@ -383,14 +383,22 @@ class FrappyManager(ServiceManager):
print(f'{gap} ! {round(ambiguous)} ambiguous mappings sea -> frappy')
def treat_args(self, argdict, unknown=(), extra=()):
if len(unknown) == 1:
cfg = unknown[0]
cfg = None
extra = list(extra)
for arg in unknown:
if arg.startswith('-'): # this is an option
extra.append(arg)
elif cfg is None:
cfg = arg
else:
cfg = ''
if cfg:
if cfg == 'develop':
argdict['service'] = cfg
return super().treat_args(argdict, (), ())
return super().treat_args(argdict, (), extra)
if (',' in cfg or cfg.endswith('.cfg') or
self.is_cfg(argdict.get('ins'), argdict.get('service'), cfg)):
return super().treat_args(argdict, (), unknown)
return super().treat_args(argdict, (), [cfg] + extra)
return super().treat_args(argdict, unknown, extra)
def check_cfg_file(self, ins, service, cfg, needsea=False):