summaryrefslogtreecommitdiffstats
path: root/src/lib/Server/Plugins/Cfg.py
diff options
context:
space:
mode:
authorSol Jerome <sol.jerome@gmail.com>2011-06-06 18:27:24 -0500
committerSol Jerome <sol.jerome@gmail.com>2011-06-06 18:27:24 -0500
commit05c0d709111ca27ca53b1a1b08735c9c081af6ac (patch)
tree90156f52fb50ee2c1d2868187ac520cf3e66ad07 /src/lib/Server/Plugins/Cfg.py
parent95797b788dc180b240e0c1c17f2559fbb4600b5b (diff)
parent8c497c815589c7c5878490df7661c6f5d3330829 (diff)
downloadbcfg2-05c0d709111ca27ca53b1a1b08735c9c081af6ac.tar.gz
bcfg2-05c0d709111ca27ca53b1a1b08735c9c081af6ac.tar.bz2
bcfg2-05c0d709111ca27ca53b1a1b08735c9c081af6ac.zip
Merge branch 'non-ascii-diffs' of https://github.com/weiss/bcfg2
Diffstat (limited to 'src/lib/Server/Plugins/Cfg.py')
-rw-r--r--src/lib/Server/Plugins/Cfg.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/Server/Plugins/Cfg.py b/src/lib/Server/Plugins/Cfg.py
index 5e3cca847..c08e8c4b6 100644
--- a/src/lib/Server/Plugins/Cfg.py
+++ b/src/lib/Server/Plugins/Cfg.py
@@ -197,7 +197,12 @@ class CfgEntrySet(Bcfg2.Server.Plugin.EntrySet):
if os.path.exists("%s.genshi" % name):
logger.error("Cfg: Unable to pull data for genshi types")
raise Bcfg2.Server.Plugin.PluginExecutionError
- open(name, 'w').write(new_entry['text'])
+ try:
+ etext = new_entry['text'].encode(self.encoding)
+ except:
+ logger.error("Cfg: Cannot encode content of %s as %s" % (name, self.encoding))
+ raise Bcfg2.Server.Plugin.PluginExecutionError
+ open(name, 'w').write(etext)
if log:
logger.info("Wrote file %s" % name)
badattr = [attr for attr in ['owner', 'group', 'perms']