Turns out that the fix for https://bugs.launchpad.net/nova/+bug/1666831 accidentally broke boot-from-volume setups that use NFS. In particular, this line:
https://github.com/openstack/nova/blob/stable/ocata/nova/virt/libvirt/driver.py#L1149
if os.path.exists(inst_base) and not root_disk.exists(): try: shutil.rmtree(inst_base) except OSError as e: if e.errno != errno.ENOENT: raise
Causes the instance basedir which includes the instances libvirt.XML file to be deleted.
The above needs to be changed to this in order to prevent BFV instances from being destroyed on resize...
if os.path.exists(inst_base) and not root_disk.exists() and not compute_utils.is_volume_backed_instance(instance._context, instance):
This bug was reported and the fix confirmed by Joris S'heeran
Turns out that the fix for https:/ /bugs.launchpad .net/nova/ +bug/1666831 accidentally broke boot-from-volume setups that use NFS. In particular, this line:
https:/ /github. com/openstack/ nova/blob/ stable/ ocata/nova/ virt/libvirt/ driver. py#L1149
if os.path. exists( inst_base) and not root_disk.exists():
shutil. rmtree( inst_base)
raise
try:
except OSError as e:
if e.errno != errno.ENOENT:
Causes the instance basedir which includes the instances libvirt.XML file to be deleted.
The above needs to be changed to this in order to prevent BFV instances from being destroyed on resize...
if os.path. exists( inst_base) and not root_disk.exists() and not compute_ utils.is_ volume_ backed_ instance( instance. _context, instance):
This bug was reported and the fix confirmed by Joris S'heeran