From 471b5bf0d417a2847d40aee33652ca6d22dd964d Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Thu, 22 May 2008 19:05:37 +0000 Subject: Fix bcfg2-info failure if no repo has been created (Resolves Ticket #556) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@4622 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Server/Core.py | 5 ++++- src/lib/Server/Plugins/Metadata.py | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/lib/Server/Core.py b/src/lib/Server/Core.py index 6bdf2c930..6a6264e9a 100644 --- a/src/lib/Server/Core.py +++ b/src/lib/Server/Core.py @@ -241,7 +241,10 @@ class Core(object): except: logger.error("Unexpected instantiation failure for plugin %s" % (plugin), exc_info=1) - self.metadata = self.plugins['Metadata'] + if 'Metadata' in self.plugins: + self.metadata = self.plugins['Metadata'] + else: + raise CoreInitError, "No Metadata plugin loaded" for plugin in structures: if self.plugins.has_key(plugin): self.structures.append(self.plugins[plugin]) diff --git a/src/lib/Server/Plugins/Metadata.py b/src/lib/Server/Plugins/Metadata.py index 851c3bc51..15e4177e8 100644 --- a/src/lib/Server/Plugins/Metadata.py +++ b/src/lib/Server/Plugins/Metadata.py @@ -66,8 +66,11 @@ class Metadata(Bcfg2.Server.Plugin.Plugin): def __init__(self, core, datastore): Bcfg2.Server.Plugin.Plugin.__init__(self, core, datastore) self.__name__ = 'Metadata' - core.fam.AddMonitor("%s/%s" % (self.data, "groups.xml"), self) - core.fam.AddMonitor("%s/%s" % (self.data, "clients.xml"), self) + try: + core.fam.AddMonitor("%s/%s" % (self.data, "groups.xml"), self) + core.fam.AddMonitor("%s/%s" % (self.data, "clients.xml"), self) + except: + raise Bcfg2.Server.Plugin.PluginInitError self.states = {'groups.xml':False, 'clients.xml':False} self.addresses = {} self.clients = {} -- cgit v1.2.3-1-g7c22