def _setup_fakelibvirt(self): # So that the _supports_direct_io does the test based # on the current working directory, instead of the # default instances_path which doesn't exist self.flags(instances_path=self.useFixture(fixtures.TempDir()).path) # Put fakelibvirt in place if 'libvirt' in sys.modules: self.saved_libvirt = sys.modules['libvirt'] else: self.saved_libvirt = None self.useFixture(nova_fixtures.OSBrickFixture()) self.useFixture(nova_fixtures.LibvirtImageBackendFixture()) self.useFixture(nova_fixtures.LibvirtFixture()) self.useFixture( fixtures.MonkeyPatch( 'nova.virt.libvirt.host.Host._conn_event_thread', lambda *args: None)) self.flags(rescue_image_id="2", rescue_kernel_id="3", rescue_ramdisk_id=None, snapshots_directory='./', sysinfo_serial='none', group='libvirt') def fake_wait(): pass def fake_detach_device_with_retry(_self, get_device_conf_func, device, live, *args, **kwargs): # Still calling detach, but instead of returning function # that actually checks if device is gone from XML, just continue # because XML never gets updated in these tests _self.detach_device(get_device_conf_func(device), live=live) return fake_wait self.stub_out( 'nova.virt.libvirt.driver.LibvirtDriver.' '_get_instance_disk_info_from_config', lambda self, guest_config, block_device_info: []) self.stub_out('nova.virt.disk.api.extend', lambda image, size: None) self.stub_out( 'nova.virt.libvirt.driver.LibvirtDriver.' 'delete_instance_files', lambda self, instance: None) self.stub_out('nova.virt.libvirt.guest.Guest.detach_device_with_retry', fake_detach_device_with_retry) self.stub_out('nova.virt.libvirt.guest.Guest.migrate', lambda self, destination, migrate_uri=None, migrate_disks =None, destination_xml=None, flags=0, bandwidth=0: None) # We can't actually make a config drive v2 because ensure_tree has # been faked out self.stub_out('nova.virt.configdrive.ConfigDriveBuilder.make_drive', lambda self, path: None)
def setUp(self): super(VPMEMTestBase, self).setUp() self.flags(pmem_namespaces="4GB:ns_0,SMALL:ns_1|ns_2", group='libvirt') self.fake_pmem_namespaces = ''' [{"dev":"namespace0.0", "mode":"devdax", "map":"mem", "size":4292870144, "uuid":"24ffd5e4-2b39-4f28-88b3-d6dc1ec44863", "daxregion":{"id": 0, "size": 4292870144,"align": 2097152, "devices":[{"chardev":"dax0.0", "size":4292870144}]}, "name":"ns_0", "numa_node":0}, {"dev":"namespace0.1", "mode":"devdax", "map":"mem", "size":4292870144, "uuid":"ac64fe52-de38-465b-b32b-947a6773ac66", "daxregion":{"id": 0, "size": 4292870144,"align": 2097152, "devices":[{"chardev":"dax0.1", "size":4292870144}]}, "name":"ns_1", "numa_node":0}, {"dev":"namespace0.2", "mode":"devdax", "map":"mem", "size":4292870144, "uuid":"2ff41eba-db9c-4bb9-a959-31d992568a3e", "raw_uuid":"0b61823b-5668-4856-842d-c644dae83410", "daxregion":{"id":0, "size":4292870144, "align":2097152, "devices":[{"chardev":"dax0.2", "size":4292870144}]}, "name":"ns_2", "numa_node":0}]''' self.useFixture(fixtures.MockPatch( 'nova.privsep.libvirt.cleanup_vpmem')) self.useFixture(fixtures.MockPatch( 'nova.privsep.libvirt.get_pmem_namespaces', return_value=self.fake_pmem_namespaces)) self.useFixture(nova_fixtures.LibvirtImageBackendFixture()) self.useFixture(fixtures.MockPatch( 'nova.virt.libvirt.LibvirtDriver._get_local_gb_info', return_value={'total': 128, 'used': 44, 'free': 84})) self.mock_conn = self.useFixture(fixtures.MockPatch( 'nova.virt.libvirt.host.Host._get_new_connection')).mock
def setUp(self): self.flags(instances_path=self.useFixture(fixtures.TempDir()).path) self.computes = {} self.compute_rp_uuids = {} super(ServersTestBase, self).setUp() self.useFixture(nova_fixtures.LibvirtImageBackendFixture()) self.useFixture(nova_fixtures.LibvirtFixture()) self.useFixture(nova_fixtures.OSBrickFixture()) self.useFixture( fixtures.MockPatch('nova.virt.libvirt.LibvirtDriver._create_image', return_value=(False, False))) self.useFixture( fixtures.MockPatch( 'nova.virt.libvirt.LibvirtDriver._get_local_gb_info', return_value={ 'total': 128, 'used': 44, 'free': 84 })) self.useFixture( fixtures.MockPatch( 'nova.virt.libvirt.driver.libvirt_utils.is_valid_hostname', return_value=True)) self.useFixture( fixtures.MockPatch( 'nova.virt.libvirt.driver.libvirt_utils.file_open', side_effect=lambda *a, **k: io.BytesIO(b''))) self.useFixture( fixtures.MockPatch('nova.privsep.utils.supports_direct_io', return_value=True)) self.useFixture( fixtures.MockPatch('nova.virt.libvirt.host.Host.get_online_cpus', return_value=set(range(16)))) # Mock the 'get_connection' function, as we're going to need to provide # custom capabilities for each test _p = mock.patch('nova.virt.libvirt.host.Host.get_connection') self.mock_conn = _p.start() self.addCleanup(_p.stop)