From da1065ef071514f97d6bfbe104bd1040503da4aa Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Thu, 15 Jan 2009 03:11:16 +0000 Subject: add GBundler plugin (like SGenshi, but works like Bundler) git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5025 ce84e21b-d406-0410-9b95-82705330c041 --- src/lib/Server/Core.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/lib/Server/Core.py') diff --git a/src/lib/Server/Core.py b/src/lib/Server/Core.py index a99af4aa9..74839c25e 100644 --- a/src/lib/Server/Core.py +++ b/src/lib/Server/Core.py @@ -1,5 +1,5 @@ '''Bcfg2.Server.Core provides the runtime support for bcfg2 modules''' -__revision__ = '$Revision: 5014 $' +__revision__ = '$Revision$' from ConfigParser import ConfigParser, NoSectionError, NoOptionError c = ConfigParser() @@ -117,9 +117,15 @@ class Core(object): def GetStructures(self, metadata): '''Get all structures for client specified by metadata''' - return reduce(lambda x, y:x+y, - [struct.BuildStructures(metadata) for struct \ - in self.structures], []) + structures = reduce(lambda x, y:x+y, + [struct.BuildStructures(metadata) for struct \ + in self.structures], []) + sbundles = [b.get('name') for b in structures if b.tag == 'Bundle'] + missing = [b for b in metadata.bundles if b not in sbundles] + if missing: + logger.error("Client %s configuration missing bundles: %s" \ + % (metadata.hostname, ':'.join(missing))) + return structures def BindStructure(self, structure, metadata): '''Bind a complete structure''' -- cgit v1.2.3-1-g7c22