def test_boot_from_volume(self): block_device_info = db_fakes.get_fake_block_device_info(self._volume_target_portal, self._volume_id) self._setup_spawn_instance_mocks(cow=False, block_device_info=block_device_info, boot_from_volume=True) self._mox.ReplayAll() self._spawn_instance(False, block_device_info) self._mox.VerifyAll() self.assertEquals(len(self._instance_volume_disks), 1)
def _test_pre_live_migration(self, cow, with_volumes): self.flags(use_cow_images=cow) instance_data = self._get_instance_data() instance = db.instance_create(self._context, instance_data) instance["system_metadata"] = {} network_info = fake_network.fake_get_instance_nw_info(self.stubs, spectacular=True) m = livemigrationutils.LiveMigrationUtils.check_live_migration_config() m.AndReturn(True) if cow: m = basevolumeutils.BaseVolumeUtils.volume_in_mapping(mox.IsA(str), None) m.AndReturn(False) m = vhdutils.VHDUtils.get_vhd_info(mox.Func(self._check_img_path)) m.AndReturn({"MaxInternalSize": 1024}) fake.PathUtils.copyfile(mox.IsA(str), mox.IsA(str)) vhdutils.VHDUtils.resize_vhd(mox.IsA(str), mox.IsA(object)) if with_volumes: block_device_info = db_fakes.get_fake_block_device_info(self._volume_target_portal, self._volume_id) mapping = driver.block_device_info_get_mapping(block_device_info) data = mapping[0]["connection_info"]["data"] target_lun = data["target_lun"] target_iqn = data["target_iqn"] target_portal = data["target_portal"] fake_mounted_disk = "fake_mounted_disk" fake_device_number = 0 self._mock_login_storage_target( target_iqn, target_lun, target_portal, fake_mounted_disk, fake_device_number ) else: block_device_info = None self._mox.ReplayAll() self._conn.pre_live_migration(self._context, instance, block_device_info, None, network_info) self._mox.VerifyAll() if cow: self.assertTrue(self._fetched_image is not None) else: self.assertTrue(self._fetched_image is None)