@@ -20448,7 +20448,8 @@ def test_cleanup_migrate_data_shared_block_storage(self,
20448
20448
# is_shared_block_storage=True and destroy_disks=False.
20449
20449
instance = objects.Instance(self.context, **self.test_instance)
20450
20450
migrate_data = objects.LibvirtLiveMigrateData(
20451
- is_shared_block_storage=True)
20451
+ is_shared_block_storage=True,
20452
+ is_shared_instance_path=False)
20452
20453
drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI())
20453
20454
drvr.cleanup(
20454
20455
self.context, instance, network_info={}, destroy_disks=False,
@@ -20458,6 +20459,25 @@ def test_cleanup_migrate_data_shared_block_storage(self,
20458
20459
self.assertTrue(instance.cleaned)
20459
20460
save.assert_called_once_with()
20460
20461
20462
+ @mock.patch.object(libvirt_driver.LibvirtDriver, 'delete_instance_files',
20463
+ return_value=True)
20464
+ @mock.patch.object(objects.Instance, 'save')
20465
+ @mock.patch.object(libvirt_driver.LibvirtDriver, '_undefine_domain')
20466
+ def test_cleanup_migrate_data_block_storage_and_share_instance_dir(
20467
+ self, _undefine_domain, save, delete_instance_files
20468
+ ):
20469
+ # Test the case when the instance directory is on shared storage
20470
+ # (e.g. NFS) and the instance is booted form volume.
20471
+ instance = objects.Instance(self.context, **self.test_instance)
20472
+ migrate_data = objects.LibvirtLiveMigrateData(
20473
+ is_shared_block_storage=True,
20474
+ is_shared_instance_path=True)
20475
+ drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI())
20476
+ drvr.cleanup(
20477
+ self.context, instance, network_info={}, destroy_disks=False,
20478
+ migrate_data=migrate_data, destroy_vifs=False)
20479
+ delete_instance_files.assert_not_called()
20480
+
20461
20481
@mock.patch.object(libvirt_driver.LibvirtDriver, 'delete_instance_files',
20462
20482
return_value=True)
20463
20483
@mock.patch.object(objects.Instance, 'save')
0 commit comments