diff options
author | Jack Neely <jjneely@ncsu.edu> | 2011-06-10 13:29:23 -0400 |
---|---|---|
committer | Jack Neely <jjneely@ncsu.edu> | 2011-06-10 13:29:23 -0400 |
commit | 90c85147bacea14771abf8faa1fc5f185418d14b (patch) | |
tree | b10e06fc80ed714f5376b169e32b8953479211f1 /src/lib/Server/Plugins/TGenshi.py | |
parent | 4f3da4543ec4e8c3c4776ae2ee3611e47ce78525 (diff) | |
parent | ce6a228d33ace4136dc2b5388c64795dfbd26ffb (diff) | |
download | bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.tar.gz bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.tar.bz2 bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.zip |
Merge branch 'master' of github.com:solj/bcfg2
Diffstat (limited to 'src/lib/Server/Plugins/TGenshi.py')
-rw-r--r-- | src/lib/Server/Plugins/TGenshi.py | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/lib/Server/Plugins/TGenshi.py b/src/lib/Server/Plugins/TGenshi.py index 2a12672cc..bc5e00400 100644 --- a/src/lib/Server/Plugins/TGenshi.py +++ b/src/lib/Server/Plugins/TGenshi.py @@ -3,7 +3,11 @@ __revision__ = '$Revision$' import binascii import logging +import sys import Bcfg2.Server.Plugin +# py3k compatibility +if sys.hexversion >= 0x03000000: + unicode = str logger = logging.getLogger('Bcfg2.Plugins.TGenshi') @@ -63,11 +67,14 @@ class TemplateFile: try: self.template = loader.load(self.name, cls=self.template_cls, encoding=self.encoding) - except LookupError, lerror: + except LookupError: + lerror = sys.exc_info()[1] logger.error('Genshi lookup error: %s' % lerror) - except TemplateError, terror: + except TemplateError: + terror = sys.exc_info()[1] logger.error('Genshi template error: %s' % terror) - except genshi.input.ParseError, perror: + except genshi.input.ParseError: + perror = sys.exc_info()[1] logger.error('Genshi parse error: %s' % perror) def bind_entry(self, entry, metadata): @@ -92,7 +99,7 @@ class TemplateFile: entry.text = textdata else: if entry.get('encoding') == 'base64': - # take care of case where file needs base64 encoding + # take care of case where file needs base64 encoding entry.text = binascii.b2a_base64(textdata) else: entry.text = unicode(textdata, self.encoding) @@ -107,10 +114,12 @@ class TemplateFile: entry.text = unicode(xmldata, self.encoding) if entry.text == '': entry.set('empty', 'true') - except TemplateError, terror: + except TemplateError: + terror = sys.exc_info()[1] logger.error('Genshi template error: %s' % terror) raise Bcfg2.Server.Plugin.PluginExecutionError - except AttributeError, err: + except AttributeError: + err = sys.exc_info()[1] logger.error('Genshi template loading error: %s' % err) raise Bcfg2.Server.Plugin.PluginExecutionError |