nova/nova/virt
rsritesh d89e7d7857 libvirt: flatten rbd images when unshelving an instance
Previously attempts to remove the shelved snapshot of an unshelved
instance when using the rbd backends for both Nova and Glance would
fail. This was due to the instance disk being cloned from and still
referencing the shelved snapshot image in Glance, blocking any attempt
to remove this image later in the unshelve process.

After much debate this change attempts to fix this issue by flattening
the instance disk while the instance is being spawned as part of an
unshelve. For the rbd imagebackend this removes any reference to the
shelved snapshot in Glance allowing this image to be removed. For all
other imagebackends the call to flatten the image is currently a no-op.

Co-Authored-By: Lee Yarwood <lyarwood@redhat.com>
Co-Authored-By: Vladyslav Drok <vdrok@mirantis.com>

Closes-Bug: #1653953
Change-Id: If3c9d1de3ce0fe394405bd1e1f0fa08ce2baeda8
2019-06-27 09:52:45 +01:00
..
disk Fix guestfs.set_backend_settings call 2019-05-18 18:53:13 +00:00
hyperv Expose Hyper-V supported image types 2019-05-07 07:40:05 -07:00
image libvirt: virtuozzo instance resize support 2016-06-28 22:13:49 +03:00
ironic [ironic] Don't remove instance info twice in destroy 2019-05-17 15:22:29 +01:00
libvirt libvirt: flatten rbd images when unshelving an instance 2019-06-27 09:52:45 +01:00
powervm conf: Rename 'configuration drive' to 'config drive' 2019-06-20 18:23:14 +01:00
vmwareapi Remove nova.compute.*API() shims 2019-06-12 16:09:46 +01:00
xenapi Remove nova.compute.*API() shims 2019-06-12 16:09:46 +01:00
zvm Add zvm driver image type capabilities 2019-05-07 07:40:06 -07:00
__init__.py Declare nova.virt namespace 2016-04-28 15:01:44 +00:00
arch.py Added ability to configure default architecture for ImagePropertiesFilter 2018-05-14 16:55:13 -04:00
block_device.py Merge "bdm: store empty object as connection_info by default" 2019-06-24 22:47:13 +00:00
configdrive.py Skip existing VMs when hosts apply force_config_drive 2019-05-22 21:02:16 +00:00
driver.py Merge "Remove ComputeDriver.macs_for_instance method" 2019-05-09 18:55:33 +00:00
event.py Port binding based on events during live migration 2018-07-19 09:09:55 -04:00
fake.py Merge "Add functional recreate test for regression bug 1825537" 2019-06-21 20:39:36 +00:00
firewall.py Merge "Remove translation of log messages" 2017-06-20 21:16:49 +00:00
hardware.py Merge "Improve existing flavor and image metadata validation" 2019-03-05 08:57:41 +00:00
imagecache.py Rename ImageCacheManager._list_base_images to _scan_base_images 2016-05-26 14:45:42 +01:00
images.py Improve libvirt image and snapshot handling 2019-03-05 12:18:34 -06:00
interfaces.template
netutils.py libvirt: add vf_trusted field for network metadata 2018-05-30 15:11:59 -04:00
osinfo.py Remove translation of log messages 2017-06-13 11:20:28 +07:00
storage_users.py Remove translation of log messages 2017-06-13 11:20:28 +07:00
virtapi.py Remove unused provider firewall rules functionality in nova 2016-02-01 15:50:04 +01:00