diff options
| author | Sean Dague <sdague@linux.vnet.ibm.com> | 2012-06-20 16:58:57 -0400 |
|---|---|---|
| committer | Sean Dague <sdague@linux.vnet.ibm.com> | 2012-06-27 14:26:54 -0400 |
| commit | aa9a592abcbfabad4d2a3f8bb49d1b28d7724262 (patch) | |
| tree | d8393280ab3f27712b07acc84920569b07e35374 | |
| parent | 257dc91a7d65cbe70384dfd6865378e51fe1bcb6 (diff) | |
| download | nova-aa9a592abcbfabad4d2a3f8bb49d1b28d7724262.tar.gz nova-aa9a592abcbfabad4d2a3f8bb49d1b28d7724262.tar.xz nova-aa9a592abcbfabad4d2a3f8bb49d1b28d7724262.zip | |
refactor libvirt from connection -> driver
part of bp:virt-driver-cleanup
part d) of the blueprint is to get rid of the connection terminology
and use driver instead. This does this for the libvirt driver and
associated tests.
Also add LibvirtDriver import to __init__ so that
nova.virt.libvirt.LibvirtDriver can be used as the compute_driver
string
Change-Id: I13c701c390784fa1f7809705741abb46e40973be
| -rw-r--r-- | nova/scheduler/driver.py | 2 | ||||
| -rw-r--r-- | nova/tests/test_libvirt.py | 198 | ||||
| -rw-r--r-- | nova/tests/test_virt_drivers.py | 20 | ||||
| -rw-r--r-- | nova/virt/connection.py | 2 | ||||
| -rw-r--r-- | nova/virt/libvirt/__init__.py | 17 | ||||
| -rw-r--r-- | nova/virt/libvirt/driver.py (renamed from nova/virt/libvirt/connection.py) | 0 | ||||
| -rw-r--r-- | nova/virt/libvirt/vif.py | 2 |
7 files changed, 129 insertions, 112 deletions
diff --git a/nova/scheduler/driver.py b/nova/scheduler/driver.py index 41a2f5c19..64f068ff2 100644 --- a/nova/scheduler/driver.py +++ b/nova/scheduler/driver.py @@ -50,7 +50,7 @@ FLAGS = flags.FLAGS FLAGS.register_opts(scheduler_driver_opts) flags.DECLARE('instances_path', 'nova.compute.manager') -flags.DECLARE('libvirt_type', 'nova.virt.libvirt.connection') +flags.DECLARE('libvirt_type', 'nova.virt.libvirt.driver') def cast_to_volume_host(context, host, method, update_db=True, **kwargs): diff --git a/nova/tests/test_libvirt.py b/nova/tests/test_libvirt.py index ada8c0021..75ab99383 100644 --- a/nova/tests/test_libvirt.py +++ b/nova/tests/test_libvirt.py @@ -45,7 +45,7 @@ from nova.virt import driver from nova.virt import firewall as base_firewall from nova.virt import images from nova.virt.libvirt import config -from nova.virt.libvirt import connection +from nova.virt.libvirt import driver as libvirt_driver from nova.virt.libvirt import firewall from nova.virt.libvirt import imagebackend from nova.virt.libvirt import utils as libvirt_utils @@ -55,11 +55,11 @@ from nova.volume import driver as volume_driver try: import libvirt - connection.libvirt = libvirt + libvirt_driver.libvirt = libvirt except ImportError: # TODO(sdague): there should be a cleaner way to handle this # in the case where libvirt python isn't installed - connection.libvirt = "" + libvirt_driver.libvirt = "" libvirt = None @@ -413,22 +413,22 @@ class LibvirtConnTestCase(test.TestCase): def setUp(self): super(LibvirtConnTestCase, self).setUp() - connection._late_load_cheetah() + libvirt_driver._late_load_cheetah() self.flags(fake_call=True) self.user_id = 'fake' self.project_id = 'fake' self.context = context.get_admin_context() self.flags(instances_path='') self.call_libvirt_dependant_setup = False - connection.libvirt_utils = fake_libvirt_utils + libvirt_driver.libvirt_utils = fake_libvirt_utils def fake_extend(image, size): pass - self.stubs.Set(connection.disk, 'extend', fake_extend) + self.stubs.Set(libvirt_driver.disk, 'extend', fake_extend) def tearDown(self): - connection.libvirt_utils = libvirt_utils + libvirt_driver.libvirt_utils = libvirt_utils super(LibvirtConnTestCase, self).tearDown() test_instance = {'memory_kb': '1024000', @@ -461,8 +461,8 @@ class LibvirtConnTestCase(test.TestCase): self.flags(image_service='nova.image.fake.FakeImageService') self.flags(libvirt_vif_driver="nova.tests.fake_network.FakeVIFDriver") - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn = fake + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn = fake def fake_lookup(self, instance_name): return FakeVirtDomain() @@ -486,7 +486,7 @@ class LibvirtConnTestCase(test.TestCase): self.flags(my_ip=ip) self.flags(host=host) - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) expected = { 'ip': ip, 'initiator': initiator, @@ -499,7 +499,7 @@ class LibvirtConnTestCase(test.TestCase): self.assertDictMatch(expected, result) def test_get_guest_config(self): - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) instance_ref = db.instance_create(self.context, self.test_instance) cfg = conn.get_guest_config(instance_ref, @@ -543,7 +543,7 @@ class LibvirtConnTestCase(test.TestCase): "catchup") def test_get_guest_config_with_two_nics(self): - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) instance_ref = db.instance_create(self.context, self.test_instance) cfg = conn.get_guest_config(instance_ref, @@ -575,7 +575,7 @@ class LibvirtConnTestCase(test.TestCase): def test_get_guest_config_with_root_device_name(self): self.flags(libvirt_type='uml') - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) instance_ref = db.instance_create(self.context, self.test_instance) cfg = conn.get_guest_config(instance_ref, [], None, None, @@ -595,7 +595,7 @@ class LibvirtConnTestCase(test.TestCase): config.LibvirtConfigGuestConsole) def test_get_guest_config_with_block_device(self): - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) instance_ref = db.instance_create(self.context, self.test_instance) conn_info = {'driver_volume_type': 'fake'} @@ -684,12 +684,12 @@ class LibvirtConnTestCase(test.TestCase): "cdrom", "ide") def test_list_instances(self): - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByID = self.fake_lookup - connection.LibvirtDriver._conn.listDomainsID = lambda: [0, 1] + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByID = self.fake_lookup + libvirt_driver.LibvirtDriver._conn.listDomainsID = lambda: [0, 1] self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) instances = conn.list_instances() # Only one should be listed, since domain with ID 0 must be skiped self.assertEquals(len(instances), 1) @@ -736,12 +736,12 @@ class LibvirtConnTestCase(test.TestCase): def fake_lookup(id): return FakeVirtDomain(xml[id]) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.listDomainsID = lambda: range(4) - connection.LibvirtDriver._conn.lookupByID = fake_lookup + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.listDomainsID = lambda: range(4) + libvirt_driver.LibvirtDriver._conn.lookupByID = fake_lookup self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) devices = conn.get_all_block_devices() self.assertEqual(devices, ['/path/to/dev/1', '/path/to/dev/3']) @@ -795,13 +795,13 @@ class LibvirtConnTestCase(test.TestCase): def fake_lookup_name(name): return FakeVirtDomain(xml[1]) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.listDomainsID = lambda: range(4) - connection.LibvirtDriver._conn.lookupByID = fake_lookup - connection.LibvirtDriver._conn.lookupByName = fake_lookup_name + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.listDomainsID = lambda: range(4) + libvirt_driver.LibvirtDriver._conn.lookupByID = fake_lookup + libvirt_driver.LibvirtDriver._conn.lookupByName = fake_lookup_name self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) devices = conn.get_disks(conn.list_instances()[0]) self.assertEqual(devices, ['vda', 'vdb']) @@ -827,14 +827,14 @@ class LibvirtConnTestCase(test.TestCase): # To work with it from snapshot, the single image_service is needed recv_meta = image_service.create(context, sent_meta) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup - self.mox.StubOutWithMock(connection.utils, 'execute') - connection.utils.execute = self.fake_execute + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup + self.mox.StubOutWithMock(libvirt_driver.utils, 'execute') + libvirt_driver.utils.execute = self.fake_execute self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.snapshot(self.context, instance_ref, recv_meta['id']) snapshot = image_service.show(context, recv_meta['id']) @@ -861,14 +861,14 @@ class LibvirtConnTestCase(test.TestCase): # To work with it from snapshot, the single image_service is needed recv_meta = image_service.create(context, sent_meta) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup - self.mox.StubOutWithMock(connection.utils, 'execute') - connection.utils.execute = self.fake_execute + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup + self.mox.StubOutWithMock(libvirt_driver.utils, 'execute') + libvirt_driver.utils.execute = self.fake_execute self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.snapshot(self.context, instance_ref, recv_meta['id']) snapshot = image_service.show(context, recv_meta['id']) @@ -896,14 +896,14 @@ class LibvirtConnTestCase(test.TestCase): # To work with it from snapshot, the single image_service is needed recv_meta = image_service.create(context, sent_meta) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup - self.mox.StubOutWithMock(connection.utils, 'execute') - connection.utils.execute = self.fake_execute + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup + self.mox.StubOutWithMock(libvirt_driver.utils, 'execute') + libvirt_driver.utils.execute = self.fake_execute self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.snapshot(self.context, instance_ref, recv_meta['id']) snapshot = image_service.show(context, recv_meta['id']) @@ -935,14 +935,14 @@ class LibvirtConnTestCase(test.TestCase): # To work with it from snapshot, the single image_service is needed recv_meta = image_service.create(context, sent_meta) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup - self.mox.StubOutWithMock(connection.utils, 'execute') - connection.utils.execute = self.fake_execute + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup + self.mox.StubOutWithMock(libvirt_driver.utils, 'execute') + libvirt_driver.utils.execute = self.fake_execute self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.snapshot(self.context, instance_ref, recv_meta['id']) snapshot = image_service.show(context, recv_meta['id']) @@ -969,14 +969,14 @@ class LibvirtConnTestCase(test.TestCase): 'status': 'creating', 'properties': properties} recv_meta = image_service.create(context, sent_meta) - self.mox.StubOutWithMock(connection.LibvirtDriver, '_conn') - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup - self.mox.StubOutWithMock(connection.utils, 'execute') - connection.utils.execute = self.fake_execute + self.mox.StubOutWithMock(libvirt_driver.LibvirtDriver, '_conn') + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup + self.mox.StubOutWithMock(libvirt_driver.utils, 'execute') + libvirt_driver.utils.execute = self.fake_execute self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.snapshot(self.context, instance_ref, recv_meta['id']) snapshot = image_service.show(context, recv_meta['id']) @@ -986,9 +986,9 @@ class LibvirtConnTestCase(test.TestCase): def test_attach_invalid_volume_type(self): self.create_fake_libvirt_mock() - connection.LibvirtDriver._conn.lookupByName = self.fake_lookup + libvirt_driver.LibvirtDriver._conn.lookupByName = self.fake_lookup self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.assertRaises(exception.VolumeDriverNotFound, conn.attach_volume, {"driver_volume_type": "badtype"}, @@ -998,7 +998,7 @@ class LibvirtConnTestCase(test.TestCase): def test_multi_nic(self): instance_data = dict(self.test_instance) network_info = _fake_network_info(self.stubs, 2) - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) instance_ref = db.instance_create(self.context, instance_data) xml = conn.to_xml(instance_ref, network_info, None, False) tree = etree.fromstring(xml) @@ -1015,7 +1015,7 @@ class LibvirtConnTestCase(test.TestCase): instance_ref = db.instance_create(user_context, instance) self.flags(libvirt_type='lxc') - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) self.assertEquals(conn.uri, 'lxc:///') @@ -1058,7 +1058,7 @@ class LibvirtConnTestCase(test.TestCase): for (libvirt_type, checks) in type_disk_map.iteritems(): self.flags(libvirt_type=libvirt_type) - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) network_info = _fake_network_info(self.stubs, 1) xml = conn.to_xml(instance_ref, network_info) @@ -1087,14 +1087,14 @@ class LibvirtConnTestCase(test.TestCase): def connection_supports_direct_io_stub(*args, **kwargs): return directio_supported - self.stubs.Set(connection.LibvirtDriver, + self.stubs.Set(libvirt_driver.LibvirtDriver, '_supports_direct_io', connection_supports_direct_io_stub) user_context = context.RequestContext(self.user_id, self.project_id) instance_ref = db.instance_create(user_context, self.test_instance) network_info = _fake_network_info(self.stubs, 1) - xml = connection.LibvirtDriver(True).to_xml(instance_ref, + xml = libvirt_driver.LibvirtDriver(True).to_xml(instance_ref, network_info, image_meta) tree = etree.fromstring(xml) @@ -1106,7 +1106,7 @@ class LibvirtConnTestCase(test.TestCase): # The O_DIRECT availability is cached on first use in # LibvirtDriver, hence we re-create it here - xml = connection.LibvirtDriver(True).to_xml(instance_ref, + xml = libvirt_driver.LibvirtDriver(True).to_xml(instance_ref, network_info, image_meta) tree = etree.fromstring(xml) @@ -1119,7 +1119,7 @@ class LibvirtConnTestCase(test.TestCase): instance_ref = db.instance_create(user_context, self.test_instance) network_info = _fake_network_info(self.stubs, 1) - xml = connection.LibvirtDriver(True).to_xml(instance_ref, + xml = libvirt_driver.LibvirtDriver(True).to_xml(instance_ref, network_info, image_meta) tree = etree.fromstring(xml) @@ -1132,7 +1132,7 @@ class LibvirtConnTestCase(test.TestCase): instance_ref = db.instance_create(user_context, self.test_instance) network_info = _fake_network_info(self.stubs, 1) - xml = connection.LibvirtDriver(True).to_xml(instance_ref, + xml = libvirt_driver.LibvirtDriver(True).to_xml(instance_ref, network_info, image_meta) tree = etree.fromstring(xml) @@ -1221,7 +1221,7 @@ class LibvirtConnTestCase(test.TestCase): for (libvirt_type, (expected_uri, checks)) in type_uri_map.iteritems(): self.flags(libvirt_type=libvirt_type) - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) self.assertEquals(conn.uri, expected_uri) @@ -1250,7 +1250,7 @@ class LibvirtConnTestCase(test.TestCase): self.flags(libvirt_uri=testuri) for (libvirt_type, (expected_uri, checks)) in type_uri_map.iteritems(): self.flags(libvirt_type=libvirt_type) - conn = connection.LibvirtDriver(True) + conn = libvirt_driver.LibvirtDriver(True) self.assertEquals(conn.uri, testuri) db.instance_destroy(user_context, instance_ref['uuid']) @@ -1283,7 +1283,7 @@ class LibvirtConnTestCase(test.TestCase): # Start test self.mox.ReplayAll() try: - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn.firewall_driver, 'setup_basic_filtering', fake_none) @@ -1343,7 +1343,7 @@ class LibvirtConnTestCase(test.TestCase): #start test self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.assertRaises(libvirt.libvirtError, conn._live_migration, self.context, instance_ref, 'dest', False, @@ -1364,7 +1364,7 @@ class LibvirtConnTestCase(test.TestCase): vol = {'block_device_mapping': [ {'connection_info': 'dummy', 'mount_device': '/dev/sda'}, {'connection_info': 'dummy', 'mount_device': '/dev/sdb'}]} - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) # Creating mocks self.mox.StubOutWithMock(driver, "block_device_info_get_mapping") @@ -1396,7 +1396,7 @@ class LibvirtConnTestCase(test.TestCase): # qemu-img should be mockd since test environment might not have # large disk space. self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) conn.pre_block_migration(self.context, instance_ref, dummyjson % tmpdir) @@ -1452,7 +1452,7 @@ class LibvirtConnTestCase(test.TestCase): os.path.getsize('/test/disk.local').AndReturn((21474836480)) self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) info = conn.get_instance_disk_info(instance_ref.name) info = jsonutils.loads(info) self.assertEquals(info[0]['type'], 'raw') @@ -1484,7 +1484,7 @@ class LibvirtConnTestCase(test.TestCase): # Start test self.mox.ReplayAll() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn.firewall_driver, 'setup_basic_filtering', fake_none) @@ -1542,10 +1542,10 @@ class LibvirtConnTestCase(test.TestCase): return FakeVirtDomain(fake_dom_xml) self.create_fake_libvirt_mock() - connection.LibvirtDriver._conn.lookupByName = fake_lookup - connection.libvirt_utils = fake_libvirt_utils + libvirt_driver.LibvirtDriver._conn.lookupByName = fake_lookup + libvirt_driver.libvirt_utils = fake_libvirt_utils - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) output = conn.get_console_output(instance) self.assertEquals("foo", output) @@ -1586,16 +1586,16 @@ class LibvirtConnTestCase(test.TestCase): return fp.read() self.create_fake_libvirt_mock() - connection.LibvirtDriver._conn.lookupByName = fake_lookup - connection.LibvirtDriver._flush_libvirt_console = _fake_flush - connection.libvirt_utils = fake_libvirt_utils + libvirt_driver.LibvirtDriver._conn.lookupByName = fake_lookup + libvirt_driver.LibvirtDriver._flush_libvirt_console = _fake_flush + libvirt_driver.libvirt_utils = fake_libvirt_utils - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) output = conn.get_console_output(instance) self.assertEquals("foo", output) def test_get_host_ip_addr(self): - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) ip = conn.get_host_ip_addr() self.assertEquals(ip, FLAGS.my_ip) @@ -1605,7 +1605,7 @@ class LibvirtConnTestCase(test.TestCase): (libvirt.VIR_ERR_SYSTEM_ERROR, libvirt.VIR_FROM_REMOTE), (libvirt.VIR_ERR_SYSTEM_ERROR, libvirt.VIR_FROM_RPC)): - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.mox.StubOutWithMock(conn, "_wrapped_conn") self.mox.StubOutWithMock(conn._wrapped_conn, "getCapabilities") @@ -1625,7 +1625,7 @@ class LibvirtConnTestCase(test.TestCase): self.mox.UnsetStubs() def test_volume_in_mapping(self): - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) swap = {'device_name': '/dev/sdb', 'swap_size': 1} ephemerals = [{'num': 0, @@ -1665,7 +1665,7 @@ class LibvirtConnTestCase(test.TestCase): def fake_lookup_by_name(instance_name): raise exception.InstanceNotFound() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn, '_lookup_by_name', fake_lookup_by_name) instance = db.instance_create(self.context, self.test_instance) @@ -1688,7 +1688,7 @@ class LibvirtConnTestCase(test.TestCase): def fake_get_info(instance_name): return {'state': power_state.SHUTDOWN} - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn, '_lookup_by_name', fake_lookup_by_name) self.stubs.Set(conn, 'get_info', fake_get_info) instance = {"name": "instancename", "id": "instanceid", @@ -1708,7 +1708,7 @@ class LibvirtConnTestCase(test.TestCase): def fake_get_info(instance_name): return {'state': power_state.SHUTDOWN} - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn, '_lookup_by_name', fake_lookup_by_name) self.stubs.Set(conn, 'get_info', fake_get_info) instance = {"name": "instancename", "id": "instanceid", @@ -1729,7 +1729,7 @@ class LibvirtConnTestCase(test.TestCase): def fake_get_info(instance_name): raise exception.InstanceNotFound() - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) self.stubs.Set(conn, '_lookup_by_name', fake_lookup_by_name) self.stubs.Set(conn, 'get_info', fake_get_info) instance = {"name": "instancename", "id": "instanceid", @@ -1739,7 +1739,7 @@ class LibvirtConnTestCase(test.TestCase): def test_available_least_handles_missing(self): """Ensure destroy calls managedSaveRemove for saved instance""" - conn = connection.LibvirtDriver(False) + conn = libvirt_driver.LibvirtDriver(False) def list_instances(): return ['fake'] @@ -1799,11 +1799,11 @@ class HostStateTestCase(test.TestCase): return 13091 def test_update_status(self): - self.mox.StubOutWithMock(connection, 'LibvirtDriver') - connection.LibvirtDriver(True).AndReturn(self.FakeConnection()) + self.mox.StubOutWithMock(libvirt_driver, 'LibvirtDriver') + libvirt_driver.LibvirtDriver(True).AndReturn(self.FakeConnection()) self.mox.ReplayAll() - hs = connection.HostState(True) + hs = libvirt_driver.HostState(True) stats = hs._stats self.assertEquals(stats["vcpus"], 1) self.assertEquals(stats["vcpus_used"], 0) @@ -2558,10 +2558,10 @@ disk size: 4.4M''', '')) class LibvirtDriverTestCase(test.TestCase): - """Test for nova.virt.libvirt.connection.LibvirtDriver.""" + """Test for nova.virt.libvirt.libvirt_driver.LibvirtDriver.""" def setUp(self): super(LibvirtDriverTestCase, self).setUp() - self.libvirtconnection = connection.LibvirtDriver(read_only=True) + self.libvirtconnection = libvirt_driver.LibvirtDriver(read_only=True) def _create_instance(self, params=None): """Create a test instance""" @@ -2590,7 +2590,7 @@ class LibvirtDriverTestCase(test.TestCase): return db.instance_create(context.get_admin_context(), inst) def test_migrate_disk_and_power_off_exception(self): - """Test for nova.virt.libvirt.connection.LivirtConnection + """Test for nova.virt.libvirt.libvirt_driver.LivirtConnection .migrate_disk_and_power_off. """ self.counter = 0 @@ -2627,7 +2627,7 @@ class LibvirtDriverTestCase(test.TestCase): None, ins_ref, '10.0.0.2', None, None) def test_migrate_disk_and_power_off(self): - """Test for nova.virt.libvirt.connection.LivirtConnection + """Test for nova.virt.libvirt.libvirt_driver.LivirtConnection .migrate_disk_and_power_off. """ disk_info = [{'type': 'qcow2', 'path': '/test/disk', @@ -2671,7 +2671,7 @@ class LibvirtDriverTestCase(test.TestCase): self.assertEquals(out, disk_info_text) def test_wait_for_running(self): - """Test for nova.virt.libvirt.connection.LivirtConnection + """Test for nova.virt.libvirt.libvirt_driver.LivirtConnection ._wait_for_running. """ def fake_get_info(instance): @@ -2702,7 +2702,7 @@ class LibvirtDriverTestCase(test.TestCase): 'uuid': 'other_uuid'}) def test_finish_migration(self): - """Test for nova.virt.libvirt.connection.LivirtConnection + """Test for nova.virt.libvirt.libvirt_driver.LivirtConnection .finish_migration. """ disk_info = [{'type': 'qcow2', 'path': '/test/disk', @@ -2738,7 +2738,7 @@ class LibvirtDriverTestCase(test.TestCase): return {'state': power_state.RUNNING} self.flags(use_cow_images=True) - self.stubs.Set(connection.disk, 'extend', fake_extend) + self.stubs.Set(libvirt_driver.disk, 'extend', fake_extend) self.stubs.Set(self.libvirtconnection, 'to_xml', fake_to_xml) self.stubs.Set(self.libvirtconnection, 'plug_vifs', fake_plug_vifs) self.stubs.Set(self.libvirtconnection, '_create_image', @@ -2760,7 +2760,7 @@ class LibvirtDriverTestCase(test.TestCase): disk_info_text, None, None, None) def test_finish_revert_migration(self): - """Test for nova.virt.libvirt.connection.LivirtConnection + """Test for nova.virt.libvirt.libvirt_driver.LivirtConnection .finish_revert_migration. """ def fake_execute(*args, **kwargs): @@ -2815,6 +2815,6 @@ class LibvirtNonblockingTestCase(test.TestCase): @test.skip_if(missing_libvirt(), "Test requires libvirt") def test_connection_to_primitive(self): """Test bug 962840""" - import nova.virt.libvirt.connection - connection = nova.virt.libvirt.connection.LibvirtDriver('') - jsonutils.to_primitive(connection._conn, convert_instances=True) + import nova.virt.libvirt.driver as libvirt_driver + connection = libvirt_driver.LibvirtDriver('') + jsonutils.to_primitive(libvirt_driver._conn, convert_instances=True) diff --git a/nova/tests/test_virt_drivers.py b/nova/tests/test_virt_drivers.py index 3457a77e4..9f54089bf 100644 --- a/nova/tests/test_virt_drivers.py +++ b/nova/tests/test_virt_drivers.py @@ -68,12 +68,12 @@ class _FakeDriverBackendTestCase(test.TestCase): import fakelibvirt sys.modules['libvirt'] = fakelibvirt - import nova.virt.libvirt.connection + import nova.virt.libvirt.driver import nova.virt.libvirt.firewall - nova.virt.libvirt.connection.imagebackend = fake_imagebackend - nova.virt.libvirt.connection.libvirt = fakelibvirt - nova.virt.libvirt.connection.libvirt_utils = fake_libvirt_utils + nova.virt.libvirt.driver.imagebackend = fake_imagebackend + nova.virt.libvirt.driver.libvirt = fakelibvirt + nova.virt.libvirt.driver.libvirt_utils = fake_libvirt_utils nova.virt.libvirt.firewall.libvirt = fakelibvirt self.flags(firewall_driver=nova.virt.libvirt.firewall.drivers[0], @@ -84,17 +84,17 @@ class _FakeDriverBackendTestCase(test.TestCase): def fake_extend(image, size): pass - self.stubs.Set(nova.virt.libvirt.connection.disk, + self.stubs.Set(nova.virt.libvirt.driver.disk, 'extend', fake_extend) def _teardown_fakelibvirt(self): # Restore libvirt - import nova.virt.libvirt.connection + import nova.virt.libvirt.driver import nova.virt.libvirt.firewall if self.saved_libvirt: sys.modules['libvirt'] = self.saved_libvirt - nova.virt.libvirt.connection.libvirt = self.saved_libvirt - nova.virt.libvirt.connection.libvirt_utils = self.saved_libvirt + nova.virt.libvirt.driver.libvirt = self.saved_libvirt + nova.virt.libvirt.driver.libvirt_utils = self.saved_libvirt nova.virt.libvirt.firewall.libvirt = self.saved_libvirt def setUp(self): @@ -117,7 +117,7 @@ class VirtDriverLoaderTestCase(_FakeDriverBackendTestCase): # if your driver supports being tested in a fake way, it can go here new_drivers = { 'nova.virt.fake.FakeDriver': 'FakeDriver', - 'nova.virt.libvirt.connection.LibvirtDriver': 'LibvirtDriver' + 'nova.virt.libvirt.LibvirtDriver': 'LibvirtDriver' } # NOTE(sdague): remove after Folsom release when connection_type @@ -560,7 +560,7 @@ class FakeConnectionTestCase(_VirtDriverTestCase): class LibvirtConnTestCase(_VirtDriverTestCase): def setUp(self): # Point _VirtDriverTestCase at the right module - self.driver_module = 'nova.virt.libvirt.connection.LibvirtDriver' + self.driver_module = 'nova.virt.libvirt.LibvirtDriver' super(LibvirtConnTestCase, self).setUp() def tearDown(self): diff --git a/nova/virt/connection.py b/nova/virt/connection.py index 0c7c3bd0a..079675da3 100644 --- a/nova/virt/connection.py +++ b/nova/virt/connection.py @@ -35,7 +35,7 @@ FLAGS = flags.FLAGS known_drivers = { 'baremetal': 'nova.virt.baremetal.proxy.ProxyConnection', 'fake': 'nova.virt.fake.FakeDriver', - 'libvirt': 'nova.virt.libvirt.connection.LibvirtDriver', + 'libvirt': 'nova.virt.libvirt.LibvirtDriver', 'vmwareapi': 'nova.virt.vmwareapi_conn.VMWareESXDriver', 'xenapi': 'nova.virt.xenapi.connection.XenAPIDriver' } diff --git a/nova/virt/libvirt/__init__.py b/nova/virt/libvirt/__init__.py index e69de29bb..00f4fd6b0 100644 --- a/nova/virt/libvirt/__init__.py +++ b/nova/virt/libvirt/__init__.py @@ -0,0 +1,17 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2012 IBM +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from nova.virt.libvirt.driver import LibvirtDriver diff --git a/nova/virt/libvirt/connection.py b/nova/virt/libvirt/driver.py index 4f81ed7b8..4f81ed7b8 100644 --- a/nova/virt/libvirt/connection.py +++ b/nova/virt/libvirt/driver.py diff --git a/nova/virt/libvirt/vif.py b/nova/virt/libvirt/vif.py index 5333e0992..3a93cf3c8 100644 --- a/nova/virt/libvirt/vif.py +++ b/nova/virt/libvirt/vif.py @@ -43,7 +43,7 @@ libvirt_vif_opts = [ FLAGS = flags.FLAGS FLAGS.register_opts(libvirt_vif_opts) -flags.DECLARE('libvirt_type', 'nova.virt.libvirt.connection') +flags.DECLARE('libvirt_type', 'nova.virt.libvirt.driver') class LibvirtBridgeDriver(vif.VIFDriver): |
