add info about SEA cfg in listing
+ fixed: all servers should be shown, independent whether nicos list, frappy list or sea list is used
This commit is contained in:
10
__init__.py
10
__init__.py
@@ -95,11 +95,12 @@ class ServiceManager:
|
||||
all = {} # for the list command, we want to register all service managers
|
||||
virtualenv = None
|
||||
pkg = ''
|
||||
revcmd = {}
|
||||
|
||||
def __init__(self):
|
||||
self.env = {}
|
||||
self.commands = {}
|
||||
self.revcmd = {}
|
||||
# self.revcmd = {}
|
||||
self.info = {}
|
||||
self.all[self.group] = self
|
||||
#prog, args = self.command.split(None, 1)
|
||||
@@ -132,7 +133,7 @@ class ServiceManager:
|
||||
parser.read(expanduser('~/servman.cfg'))
|
||||
defaults = parser['DEFAULT']
|
||||
self.commands = {}
|
||||
self.revcmd = {}
|
||||
# self.revcmd = {}
|
||||
|
||||
for ins in parser.sections():
|
||||
section = dict(parser[ins])
|
||||
@@ -154,7 +155,7 @@ class ServiceManager:
|
||||
self.get_info()
|
||||
return self.info[ins]
|
||||
|
||||
def get_cfg(self, service):
|
||||
def get_cfg(self, ins, service):
|
||||
"""return cfg info about running programs, if relevant
|
||||
|
||||
example for sea: return samenv name
|
||||
@@ -364,7 +365,7 @@ class ServiceManager:
|
||||
for serv, port in info_grp.items():
|
||||
plist = procs_dict.get(serv)
|
||||
if plist:
|
||||
cfg = cfginfo.get((ins_i, serv), '') or sm.get_cfg(serv)
|
||||
cfg = cfginfo.get((ins_i, serv), '') or sm.get_cfg(ins_i, serv)
|
||||
if sm == self:
|
||||
show_ins = True
|
||||
gs = '%s %s' % (group, serv)
|
||||
@@ -393,6 +394,7 @@ class ServiceManager:
|
||||
try:
|
||||
method(*args)
|
||||
except TypeError as e:
|
||||
raise
|
||||
errtxt = str(e)
|
||||
if ' do_%s(' % action in errtxt and 'argument' in errtxt:
|
||||
raise UsageError(errtxt)
|
||||
|
||||
Reference in New Issue
Block a user