Merge "Clean up ElementTree usage"
This commit is contained in:
commit
207a0a6f71
@ -24,10 +24,10 @@ import os
|
||||
import shutil
|
||||
import tarfile
|
||||
import tempfile
|
||||
from xml.etree import ElementTree
|
||||
|
||||
import boto.s3.connection
|
||||
import eventlet
|
||||
from lxml import etree
|
||||
|
||||
from nova import rpc
|
||||
from nova import exception
|
||||
@ -180,7 +180,7 @@ class S3ImageService(object):
|
||||
return local_filename
|
||||
|
||||
def _s3_parse_manifest(self, context, metadata, manifest):
|
||||
manifest = ElementTree.fromstring(manifest)
|
||||
manifest = etree.fromstring(manifest)
|
||||
image_format = 'ami'
|
||||
image_type = 'machine'
|
||||
|
||||
|
@ -16,6 +16,7 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from lxml import etree
|
||||
import webob
|
||||
import webob.dec
|
||||
import webob.exc
|
||||
@ -27,8 +28,6 @@ from nova import flags
|
||||
from nova import test
|
||||
from nova import utils
|
||||
|
||||
from xml.etree import ElementTree
|
||||
|
||||
FLAGS = flags.FLAGS
|
||||
|
||||
|
||||
@ -108,7 +107,7 @@ class ExecutorTestCase(test.TestCase):
|
||||
return self.executor(fake_wsgi_request)
|
||||
|
||||
def _extract_message(self, result):
|
||||
tree = ElementTree.fromstring(result.body)
|
||||
tree = etree.fromstring(result.body)
|
||||
return tree.findall('./Errors')[0].find('Error/Message').text
|
||||
|
||||
def test_instance_not_found(self):
|
||||
|
@ -14,12 +14,7 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from xml.etree import ElementTree
|
||||
try:
|
||||
ParseError = ElementTree.ParseError
|
||||
except AttributeError:
|
||||
from xml.parsers import expat
|
||||
ParseError = expat.ExpatError
|
||||
from lxml import etree
|
||||
|
||||
import uuid
|
||||
|
||||
@ -141,7 +136,7 @@ class NWFilter(object):
|
||||
self._parse_xml(xml)
|
||||
|
||||
def _parse_xml(self, xml):
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
root = tree.find('.')
|
||||
self._name = root.get('name')
|
||||
|
||||
@ -163,8 +158,8 @@ class Domain(object):
|
||||
|
||||
def _parse_definition(self, xml):
|
||||
try:
|
||||
tree = ElementTree.fromstring(xml)
|
||||
except ParseError:
|
||||
tree = etree.fromstring(xml)
|
||||
except etree.ParseError:
|
||||
raise libvirtError(VIR_ERR_XML_DETAIL, VIR_FROM_DOMAIN,
|
||||
"Invalid XML.")
|
||||
|
||||
@ -301,13 +296,13 @@ class Domain(object):
|
||||
123456789L]
|
||||
|
||||
def attachDevice(self, xml):
|
||||
disk_info = _parse_disk_info(ElementTree.fromstring(xml))
|
||||
disk_info = _parse_disk_info(etree.fromstring(xml))
|
||||
disk_info['_attached'] = True
|
||||
self._def['devices']['disks'] += [disk_info]
|
||||
return True
|
||||
|
||||
def detachDevice(self, xml):
|
||||
disk_info = _parse_disk_info(ElementTree.fromstring(xml))
|
||||
disk_info = _parse_disk_info(etree.fromstring(xml))
|
||||
disk_info['_attached'] = True
|
||||
return disk_info in self._def['devices']['disks']
|
||||
|
||||
@ -404,7 +399,7 @@ class Domain(object):
|
||||
self._state = VIR_DOMAIN_RUNNING
|
||||
|
||||
def snapshotCreateXML(self, xml, flags):
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
name = tree.find('./name').text
|
||||
snapshot = DomainSnapshot(name, self)
|
||||
self._snapshots[name] = snapshot
|
||||
@ -741,7 +736,7 @@ class Connection(object):
|
||||
</capabilities>'''
|
||||
|
||||
def compareCPU(self, xml, flags):
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
|
||||
arch_node = tree.find('./arch')
|
||||
if arch_node is not None:
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
from nova import test
|
||||
|
||||
from xml.etree import ElementTree
|
||||
from lxml import etree
|
||||
|
||||
import fakelibvirt as libvirt
|
||||
|
||||
@ -252,7 +252,7 @@ class FakeLibvirtTests(test.TestCase):
|
||||
conn.defineXML(get_vm_xml())
|
||||
dom = conn.lookupByName('testname')
|
||||
xml = dom.XMLDesc(0)
|
||||
ElementTree.fromstring(xml)
|
||||
etree.fromstring(xml)
|
||||
|
||||
def _test_accepts_source_type(self, source_type):
|
||||
conn = self.get_openAuth_curry_func()('qemu:///system')
|
||||
@ -260,7 +260,7 @@ class FakeLibvirtTests(test.TestCase):
|
||||
conn.defineXML(get_vm_xml(source_type=source_type))
|
||||
dom = conn.lookupByName('testname')
|
||||
xml = dom.XMLDesc(0)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
elem = tree.find('./devices/disk/source')
|
||||
self.assertEquals(elem.get('file'), '/somefile')
|
||||
|
||||
@ -282,7 +282,7 @@ class FakeLibvirtTests(test.TestCase):
|
||||
conn.defineXML(get_vm_xml(interface_type=network_type))
|
||||
dom = conn.lookupByName('testname')
|
||||
xml = dom.XMLDesc(0)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
elem = tree.find('./devices/interface')
|
||||
self.assertEquals(elem.get('type'), network_type)
|
||||
elem = elem.find('./source')
|
||||
@ -298,7 +298,7 @@ class FakeLibvirtTests(test.TestCase):
|
||||
|
||||
def test_getCapabilities(self):
|
||||
conn = self.get_openAuth_curry_func()('qemu:///system')
|
||||
ElementTree.fromstring(conn.getCapabilities())
|
||||
etree.fromstring(conn.getCapabilities())
|
||||
|
||||
def test_nwfilter_define_undefine(self):
|
||||
conn = self.get_openAuth_curry_func()('qemu:///system')
|
||||
|
@ -24,7 +24,7 @@ import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
from xml.etree import ElementTree
|
||||
from lxml import etree
|
||||
from xml.dom import minidom
|
||||
|
||||
from nova.api.ec2 import cloud
|
||||
@ -885,7 +885,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
conn = connection.LibvirtConnection(True)
|
||||
instance_ref = db.instance_create(self.context, instance_data)
|
||||
xml = conn.to_xml(instance_ref, network_info, None, False)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
interfaces = tree.findall("./devices/interface")
|
||||
self.assertEquals(len(interfaces), 2)
|
||||
parameters = interfaces[0].findall('./filterref/parameter')
|
||||
@ -907,7 +907,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
|
||||
network_info = _fake_network_info(self.stubs, 1)
|
||||
xml = conn.to_xml(instance_ref, network_info)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
|
||||
check = [
|
||||
(lambda t: t.find('.').get('type'), 'lxc'),
|
||||
@ -948,7 +948,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
|
||||
network_info = _fake_network_info(self.stubs, 1)
|
||||
xml = conn.to_xml(instance_ref, network_info)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
|
||||
for i, (check, expected_result) in enumerate(checks):
|
||||
self.assertEqual(check(tree),
|
||||
@ -983,7 +983,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
xml = connection.LibvirtConnection(True).to_xml(instance_ref,
|
||||
network_info,
|
||||
image_meta)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
disks = tree.findall('./devices/disk/driver')
|
||||
for disk in disks:
|
||||
self.assertEqual(disk.get("cache"), "none")
|
||||
@ -995,7 +995,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
xml = connection.LibvirtConnection(True).to_xml(instance_ref,
|
||||
network_info,
|
||||
image_meta)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
disks = tree.findall('./devices/disk/driver')
|
||||
for disk in disks:
|
||||
self.assertEqual(disk.get("cache"), "writethrough")
|
||||
@ -1008,7 +1008,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
xml = connection.LibvirtConnection(True).to_xml(instance_ref,
|
||||
network_info,
|
||||
image_meta)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
self.assertEqual(tree.find('./devices/disk').get('device'),
|
||||
device_type)
|
||||
self.assertEqual(tree.find('./devices/disk/target').get('bus'), bus)
|
||||
@ -1021,7 +1021,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
xml = connection.LibvirtConnection(True).to_xml(instance_ref,
|
||||
network_info,
|
||||
image_meta)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
self.assertEqual(tree.find('./uuid').text,
|
||||
instance_ref['uuid'])
|
||||
|
||||
@ -1120,7 +1120,7 @@ class LibvirtConnTestCase(test.TestCase):
|
||||
|
||||
network_info = _fake_network_info(self.stubs, 1)
|
||||
xml = conn.to_xml(instance_ref, network_info, None, rescue)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
for i, (check, expected_result) in enumerate(checks):
|
||||
self.assertEqual(check(tree),
|
||||
expected_result,
|
||||
@ -1677,7 +1677,7 @@ class NWFilterFakes:
|
||||
def undefine(self):
|
||||
del self.parent.filters[self.name]
|
||||
pass
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
name = tree.get('name')
|
||||
if name not in self.filters:
|
||||
self.filters[name] = FakeNWFilterInternal(self, name)
|
||||
|
@ -14,15 +14,15 @@
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from xml.etree import ElementTree
|
||||
from lxml import etree
|
||||
|
||||
from nova import flags
|
||||
from nova import test
|
||||
from nova import utils
|
||||
from nova.virt import firewall
|
||||
from nova.virt.libvirt import vif
|
||||
from nova.virt.libvirt import connection
|
||||
from nova.virt.libvirt import config
|
||||
from nova.virt.libvirt import connection
|
||||
from nova.virt.libvirt import vif
|
||||
|
||||
FLAGS = flags.FLAGS
|
||||
|
||||
@ -83,7 +83,7 @@ class LibvirtVifTestCase(test.TestCase):
|
||||
d = vif.LibvirtBridgeDriver()
|
||||
xml = self._get_instance_xml(d)
|
||||
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
ret = doc.findall('./devices/interface')
|
||||
self.assertEqual(len(ret), 1)
|
||||
node = ret[0]
|
||||
@ -99,7 +99,7 @@ class LibvirtVifTestCase(test.TestCase):
|
||||
d = vif.LibvirtOpenVswitchDriver()
|
||||
xml = self._get_instance_xml(d)
|
||||
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
ret = doc.findall('./devices/interface')
|
||||
self.assertEqual(len(ret), 1)
|
||||
node = ret[0]
|
||||
@ -117,7 +117,7 @@ class LibvirtVifTestCase(test.TestCase):
|
||||
d = vif.LibvirtOpenVswitchVirtualPortDriver()
|
||||
xml = self._get_instance_xml(d)
|
||||
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
ret = doc.findall('./devices/interface')
|
||||
self.assertEqual(len(ret), 1)
|
||||
node = ret[0]
|
||||
@ -143,7 +143,7 @@ class LibvirtVifTestCase(test.TestCase):
|
||||
d = vif.QuantumLinuxBridgeVIFDriver()
|
||||
xml = self._get_instance_xml(d)
|
||||
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
ret = doc.findall('./devices/interface')
|
||||
self.assertEqual(len(ret), 1)
|
||||
node = ret[0]
|
||||
|
@ -39,8 +39,8 @@ Supports KVM, LXC, QEMU, UML, and XEN.
|
||||
"""
|
||||
|
||||
import errno
|
||||
import hashlib
|
||||
import functools
|
||||
import hashlib
|
||||
import glob
|
||||
import multiprocessing
|
||||
import os
|
||||
@ -51,9 +51,8 @@ import uuid
|
||||
|
||||
from eventlet import greenthread
|
||||
from eventlet import tpool
|
||||
|
||||
from lxml import etree
|
||||
from xml.dom import minidom
|
||||
from xml.etree import ElementTree
|
||||
|
||||
from nova import block_device
|
||||
from nova.compute import instance_types
|
||||
@ -534,7 +533,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
def _get_disk_xml(xml, device):
|
||||
"""Returns the xml for the disk mounted at device"""
|
||||
try:
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
except Exception:
|
||||
return None
|
||||
ret = doc.findall('./devices/disk')
|
||||
@ -542,7 +541,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
for child in node.getchildren():
|
||||
if child.tag == 'target':
|
||||
if child.get('dev') == device:
|
||||
return ElementTree.tostring(node)
|
||||
return etree.tostring(node)
|
||||
|
||||
@exception.wrap_exception()
|
||||
def detach_volume(self, connection_info, instance_name, mountpoint):
|
||||
@ -592,7 +591,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
@staticmethod
|
||||
def get_lxc_container_root(virt_dom):
|
||||
xml = virt_dom.XMLDesc(0)
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
filesystem_block = doc.findall('./devices/filesystem')
|
||||
for cnt, filesystem_nodes in enumerate(filesystem_block):
|
||||
return filesystem_nodes[cnt].get('dir')
|
||||
@ -667,7 +666,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
|
||||
# Find the disk
|
||||
xml_desc = virt_dom.XMLDesc(0)
|
||||
domain = ElementTree.fromstring(xml_desc)
|
||||
domain = etree.fromstring(xml_desc)
|
||||
source = domain.find('devices/disk/source')
|
||||
disk_path = source.get('file')
|
||||
|
||||
@ -952,7 +951,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
def get_console_output(self, instance):
|
||||
virt_dom = self._lookup_by_name(instance['name'])
|
||||
xml = virt_dom.XMLDesc(0)
|
||||
tree = ElementTree.fromstring(xml)
|
||||
tree = etree.fromstring(xml)
|
||||
|
||||
console_types = {}
|
||||
|
||||
@ -1751,7 +1750,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
for dom_id in self._conn.listDomainsID():
|
||||
domain = self._conn.lookupByID(dom_id)
|
||||
try:
|
||||
doc = ElementTree.fromstring(domain.XMLDesc(0))
|
||||
doc = etree.fromstring(domain.XMLDesc(0))
|
||||
except Exception:
|
||||
continue
|
||||
ret = doc.findall('./devices/disk')
|
||||
@ -1774,7 +1773,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
doc = None
|
||||
|
||||
try:
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
except Exception:
|
||||
return []
|
||||
|
||||
@ -1807,7 +1806,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
doc = None
|
||||
|
||||
try:
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
except Exception:
|
||||
return []
|
||||
|
||||
@ -1965,7 +1964,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
"""
|
||||
|
||||
xml = self._conn.getCapabilities()
|
||||
xml = ElementTree.fromstring(xml)
|
||||
xml = etree.fromstring(xml)
|
||||
nodes = xml.findall('.//host/cpu')
|
||||
if len(nodes) != 1:
|
||||
reason = _("'<cpu>' must be 1, but %d\n") % len(nodes)
|
||||
@ -2366,7 +2365,7 @@ class LibvirtConnection(driver.ComputeDriver):
|
||||
|
||||
virt_dom = self._lookup_by_name(instance_name)
|
||||
xml = virt_dom.XMLDesc(0)
|
||||
doc = ElementTree.fromstring(xml)
|
||||
doc = etree.fromstring(xml)
|
||||
disk_nodes = doc.findall('.//devices/disk')
|
||||
path_nodes = doc.findall('.//devices/disk/source')
|
||||
driver_nodes = doc.findall('.//devices/disk/driver')
|
||||
|
@ -30,7 +30,8 @@ import random
|
||||
import socket
|
||||
import string
|
||||
import uuid
|
||||
from xml.etree import ElementTree
|
||||
|
||||
from lxml import etree
|
||||
|
||||
from nova import exception
|
||||
from nova import flags
|
||||
@ -145,7 +146,7 @@ class SanISCSIDriver(nova.volume.driver.ISCSIDriver):
|
||||
pass
|
||||
|
||||
def check_for_setup_error(self):
|
||||
"""Returns an error if prerequisites aren't met"""
|
||||
"""Returns an error if prerequisites aren't met."""
|
||||
if not self.run_local:
|
||||
if not (FLAGS.san_password or FLAGS.san_private_key):
|
||||
raise exception.Error(_('Specify san_password or '
|
||||
@ -451,7 +452,7 @@ class HpSanISCSIDriver(SanISCSIDriver):
|
||||
|
||||
LOG.debug(_("CLIQ command returned %s"), out)
|
||||
|
||||
result_xml = ElementTree.fromstring(out)
|
||||
result_xml = etree.fromstring(out)
|
||||
if check_cliq_result:
|
||||
response_node = result_xml.find("response")
|
||||
if response_node is None:
|
||||
@ -492,7 +493,7 @@ class HpSanISCSIDriver(SanISCSIDriver):
|
||||
if len(vips) == 1:
|
||||
return vips[0]
|
||||
|
||||
_xml = ElementTree.tostring(cluster_xml)
|
||||
_xml = etree.tostring(cluster_xml)
|
||||
msg = (_("Unexpected number of virtual ips for cluster "
|
||||
" %(cluster_name)s. Result=%(_xml)s") %
|
||||
locals())
|
||||
|
Loading…
x
Reference in New Issue
Block a user