From d887ad88674aef96f96ab0ff97c54617b8d715e7 Mon Sep 17 00:00:00 2001 From: Narayan Desai Date: Tue, 6 Jan 2009 17:32:51 +0000 Subject: Implement generic structure validators and reimplement Deps as one git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5005 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 d4f9b9f6e..4e014809b 100644 --- a/src/lib/Server/Core.py +++ b/src/lib/Server/Core.py @@ -194,10 +194,16 @@ class Core(object): logger.error("error in GetStructures", exc_info=1) return lxml.etree.Element("error", type='structure error') - if 'Deps' in self.plugins: - # do prereq processing - prereqs = self.plugins['Deps'].GeneratePrereqs(structures, meta) - structures.append(prereqs) + for plugin in self.plugins.values(): + if isinstance(plugin, Bcfg2.Server.Plugin.StructureValidator): + try: + plugin.validate_structures(meta, structures) + except Bcfg2.Server.Plugin.ValidationError, err: + logger.error("Plugin %s structure validation failed: %s" \ + % (plugin.name, err.message)) + except: + logger.error("Plugin %s: unexpected structure val failure" \ + % (plugin.name), exc_info=1) # Perform altsrc consistency checking esrcs = {} -- cgit v1.2.3-1-g7c22