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.
Reviewed: https:/ /review. opendev. org/668119 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=e93bc57a73d 8642012f759a4ff be5289112ba490
Committed: https:/
Submitter: Zuul
Branch: stable/rocky
commit e93bc57a73d8642 012f759a4ffbe52 89112ba490
Author: rsritesh <email address hidden>
Date: Wed Apr 19 12:02:30 2017 +0530
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 <email address hidden>
Co-Authored-By: Vladyslav Drok <email address hidden>
Closes-Bug: #1653953 394405bd1e1f0fa 08ce2baeda8 6c3b088338272c2 4d0618c07f) 7590620abc14230 0a57bcf349)
Change-Id: If3c9d1de3ce0fe
(cherry picked from commit d89e7d7857e0ab5
(cherry picked from commit e802ede4b30b21c