summaryrefslogtreecommitdiffstats
path: root/src/lib/Server/Plugins/Bundler.py
diff options
context:
space:
mode:
authorSol Jerome <sol.jerome@gmail.com>2012-03-23 10:51:32 -0500
committerSol Jerome <sol.jerome@gmail.com>2012-03-23 10:51:32 -0500
commit3063e41f480a6143b42a0eff6e4ca17bbfc0d1db (patch)
tree204e6b486ab7c7a8f9c29ad3ec77a4e344272098 /src/lib/Server/Plugins/Bundler.py
parent397c17ffc5755d2b41ccfa01225d4f42cb9545c1 (diff)
parent746293b2f242c099037aac19f14f65e68d036270 (diff)
downloadbcfg2-3063e41f480a6143b42a0eff6e4ca17bbfc0d1db.tar.gz
bcfg2-3063e41f480a6143b42a0eff6e4ca17bbfc0d1db.tar.bz2
bcfg2-3063e41f480a6143b42a0eff6e4ca17bbfc0d1db.zip
Merge branch 'maint'
Diffstat (limited to 'src/lib/Server/Plugins/Bundler.py')
-rw-r--r--src/lib/Server/Plugins/Bundler.py34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/lib/Server/Plugins/Bundler.py b/src/lib/Server/Plugins/Bundler.py
index 5b5b0d698..ccb99481e 100644
--- a/src/lib/Server/Plugins/Bundler.py
+++ b/src/lib/Server/Plugins/Bundler.py
@@ -76,24 +76,24 @@ class Bundler(Bcfg2.Server.Plugin.Plugin,
bundle_entries = {}
for key, item in self.entries.items():
- bundle_entries.setdefault(self.patterns.match(os.path.basename(key)).group('name'), []).append(item)
+ bundle_entries.setdefault(self.patterns.match(os.path.basename(key)).group('name'),
+ []).append(item)
for bundlename in metadata.bundles:
- entries = bundle_entries[bundlename]
- if len(entries) == 0:
+ try:
+ entries = bundle_entries[bundlename]
+ except KeyError:
+ self.logger.error("Bundler: Bundle %s does not exist" %
+ bundlename)
continue
- elif len(entries) == 1:
- try:
- bundleset.append(entries[0].get_xml_value(metadata))
- except genshi.template.base.TemplateError:
- t = sys.exc_info()[1]
- self.logger.error("Bundler: Failed to template genshi bundle %s" \
- % (bundlename))
- self.logger.error(t)
- except:
- self.logger.error("Bundler: Unexpected bundler error for %s" \
- % (bundlename), exc_info=1)
- else:
- self.logger.error("Got multiple matches for bundle %s" \
- % (bundlename))
+ try:
+ bundleset.append(entries[0].get_xml_value(metadata))
+ except genshi.template.base.TemplateError:
+ t = sys.exc_info()[1]
+ self.logger.error("Bundler: Failed to template genshi bundle %s"
+ % bundlename)
+ self.logger.error(t)
+ except:
+ self.logger.error("Bundler: Unexpected bundler error for %s" %
+ bundlename, exc_info=1)
return bundleset