summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugin
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-02-04 16:20:46 -0500
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-02-04 16:20:46 -0500
commit1f6cb52d0c43f842766f3ecd6c8286f0f4eed5c2 (patch)
treece0a378dbe59fedb388b29de1307eebf66ef6501 /src/lib/Bcfg2/Server/Plugin
parentdfe9dac83a9f6553b9d075fa14fcd28235aabda9 (diff)
downloadbcfg2-1f6cb52d0c43f842766f3ecd6c8286f0f4eed5c2.tar.gz
bcfg2-1f6cb52d0c43f842766f3ecd6c8286f0f4eed5c2.tar.bz2
bcfg2-1f6cb52d0c43f842766f3ecd6c8286f0f4eed5c2.zip
Bundler: various changes
* Deprecated use of an explicit name attribute * Deprecated .genshi bundles * Minor restructuring for better performance * bcfg2-lint updates
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugin')
-rw-r--r--src/lib/Bcfg2/Server/Plugin/helpers.py20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/lib/Bcfg2/Server/Plugin/helpers.py b/src/lib/Bcfg2/Server/Plugin/helpers.py
index 9d76337e0..871b5eb4e 100644
--- a/src/lib/Bcfg2/Server/Plugin/helpers.py
+++ b/src/lib/Bcfg2/Server/Plugin/helpers.py
@@ -570,7 +570,7 @@ class XMLFileBacked(FileBacked):
return "%s at %s" % (self.__class__.__name__, self.name)
-class StructFile(XMLFileBacked):
+class StructFile(XMLFileBacked, Debuggable):
""" StructFiles are XML files that contain a set of structure file
formatting logic for handling ``<Group>`` and ``<Client>``
tags.
@@ -589,6 +589,7 @@ class StructFile(XMLFileBacked):
def __init__(self, filename, should_monitor=False):
XMLFileBacked.__init__(self, filename, should_monitor=should_monitor)
+ Debuggable.__init__(self)
self.setup = Bcfg2.Options.get_option_parser()
self.encoding = self.setup['encoding']
self.template = None
@@ -605,15 +606,16 @@ class StructFile(XMLFileBacked):
encoding=self.encoding)
except LookupError:
err = sys.exc_info()[1]
- LOGGER.error('Genshi lookup error in %s: %s' % (self.name,
- err))
+ self.logger.error('Genshi lookup error in %s: %s' % (self.name,
+ err))
except genshi.template.TemplateError:
err = sys.exc_info()[1]
- LOGGER.error('Genshi template error in %s: %s' % (self.name,
- err))
+ self.logger.error('Genshi template error in %s: %s' %
+ (self.name, err))
except genshi.input.ParseError:
err = sys.exc_info()[1]
- LOGGER.error('Genshi parse error in %s: %s' % (self.name, err))
+ self.logger.error('Genshi parse error in %s: %s' % (self.name,
+ err))
if self.encryption and HAS_CRYPTO:
strict = self.xdata.get(
@@ -625,15 +627,15 @@ class StructFile(XMLFileBacked):
el.text = self._decrypt(el).encode('ascii',
'xmlcharrefreplace')
except UnicodeDecodeError:
- LOGGER.info("%s: Decrypted %s to gibberish, skipping" %
- (self.name, el.tag))
+ self.logger.info("%s: Decrypted %s to gibberish, skipping"
+ % (self.name, el.tag))
except Bcfg2.Encryption.EVPError:
msg = "Failed to decrypt %s element in %s" % (el.tag,
self.name)
if strict:
raise PluginExecutionError(msg)
else:
- LOGGER.warning(msg)
+ self.logger.warning(msg)
Index.__doc__ = XMLFileBacked.Index.__doc__
def _decrypt(self, element):