Merge "libvirt: safe_decode xml for i18n logging"

This commit is contained in:
Jenkins 2015-05-12 19:42:46 +00:00 committed by Gerrit Code Review
commit 054cbb7baf
2 changed files with 7 additions and 1 deletions

View File

@ -10099,12 +10099,17 @@ class LibvirtConnTestCase(test.NoDBTestCase):
self.assertEqual(fake_xml, xml)
raise fakelibvirt.libvirtError('virDomainDefineXML() failed')
def fake_safe_decode(text, *args, **kwargs):
return text + 'safe decoded'
self.log_error_called = False
def fake_error(msg, *args):
self.log_error_called = True
self.assertIn(fake_xml, msg % args)
self.assertIn('safe decoded', msg % args)
self.stubs.Set(encodeutils, 'safe_decode', fake_safe_decode)
self.stubs.Set(nova.virt.libvirt.driver.LOG, 'error', fake_error)
self.create_fake_libvirt_mock(defineXML=fake_defineXML)

View File

@ -4304,7 +4304,8 @@ class LibvirtDriver(driver.ComputeDriver):
err = None
try:
if xml:
err = _LE('Error defining a domain with XML: %s') % xml
err = (_LE('Error defining a domain with XML: %s') %
encodeutils.safe_decode(xml, errors='ignore'))
domain = self._host.write_instance_config(xml)
if power_on: