From ed3d29cba2bed9ae380d51aa8017ecabc99aabe5 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Mon, 13 Jan 2014 00:53:17 +0100 Subject: [PATCH] stricter checks on core modules that would fail to load --- nodemanager.py | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/nodemanager.py b/nodemanager.py index 4b030d5..7f5e204 100755 --- a/nodemanager.py +++ b/nodemanager.py @@ -203,19 +203,15 @@ If this is not the case, please remove the pid file %s. -- exiting""" % (other_p try: m = __import__(module) logger.verbose("nodemanager: triggering %s.start"%m.__name__) - m.start() + try: m.start() + except: logger.log("WARNING: module %s did not start") self.loaded_modules.append(m) - except ImportError, err: - logger.log_exc ("ERROR while loading module %s - skipping:" % module) - # if we fail to load any of these, it's really no need to go on any further - if module in NodeManager.core_modules: - logger.log("FATAL : failed to load core module %s"%module) - except AttributeError, err: - # triggered when module doesn't have a 'start' method - logger.log_exc ("ERROR while starting module %s - skipping:" % module) - # if we fail to load any of these, it's really no need to go on any further - if module in NodeManager.core_modules: + except: + if module not in NodeManager.core_modules: + logger.log_exc ("ERROR while loading module %s - skipped" % module) + else: logger.log("FATAL : failed to start core module %s"%module) + sys.exit(1) # sort on priority (lower first) def sort_module_priority (m1,m2): -- 2.43.0