Fix error when plugins key was not present

This commit is contained in:
Anders Ingemann 2013-08-11 18:05:54 +02:00
parent e18cc4ca75
commit 631901a827

View file

@ -53,19 +53,20 @@ class Manifest(object):
self.bootstrapper['tarball_dir'] = '/tmp'
self.volume = data['volume']
self.system = data['system']
self.plugins = data['plugins']
self.plugins = data['plugins'] if 'plugins' in data else {}
def load_plugins(self, data):
self.loaded_plugins = []
for plugin_name, plugin_data in data['plugins'].iteritems():
if plugin_data['enabled']:
modname = 'plugins.{plugin_name}'.format(plugin_name=plugin_name)
plugin = __import__(modname, fromlist=['plugins'])
init = getattr(plugin, 'initialize', None)
if callable(init):
init()
log.debug('Loaded plugin `%s\'', plugin_name)
self.loaded_plugins.append(plugin)
validate = getattr(plugin, 'validate_manifest', None)
if callable(validate):
validate(data, self.schema_validate)
if 'plugins' in data:
for plugin_name, plugin_data in data['plugins'].iteritems():
if plugin_data['enabled']:
modname = 'plugins.{plugin_name}'.format(plugin_name=plugin_name)
plugin = __import__(modname, fromlist=['plugins'])
init = getattr(plugin, 'initialize', None)
if callable(init):
init()
log.debug('Loaded plugin `%s\'', plugin_name)
self.loaded_plugins.append(plugin)
validate = getattr(plugin, 'validate_manifest', None)
if callable(validate):
validate(data, self.schema_validate)