[WIP] include SEA info

This commit is contained in:
2023-09-11 08:35:38 +02:00
parent a255b9b715
commit 008690fe84
3 changed files with 62 additions and 26 deletions

View File

@@ -118,6 +118,8 @@ class SeaManager(ServiceManager):
"""
if service != 'sea': # ignore when service == 'graph'
return ''
if 'sea' not in self.get_procs().get(ins):
return ''
try:
searoot = self.env[ins].get('SEA_ROOT', '')
seastatus = join(searoot, ins, 'status', 'seastatus.tcl')
@@ -172,3 +174,21 @@ class SeaManager(ServiceManager):
else:
raise UsageError('unknown argument: %s' % arg)
return [argdict.pop('ins', '')] + extra
def guess_frappy_cfg(self, ins):
self.get_info()
cfgs = self.get_cfg(ins, 'sea').split('/')
result = {}
if cfgs[0] and cfgs[0] in self.all_cfg(ins, 'main'):
result['main'] = cfgs[0]
allsticks = self.all_cfg(ins, 'stick')
stick = cfgs[:2][-1]
if stick:
for s in (stick + 'stick', stick):
if s in allsticks:
result['stick'] = s
break
addons = [a for a in cfgs[2:] if a in self.all_cfg(ins, 'addons')]
if addons:
result['addons'] = ','.join(addons)
return result