yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #48264
[Bug 1558877] [NEW] libvirt.xml not change back after doing rescue and unrescue
Public bug reported:
When doing rescue, instance's xml info will be flush into
"unrescue.xml", and then rescue instance's xml info will be write into
"libvirt.xml"
def rescue(self, context, instance, network_info, image_meta,
rescue_password):
unrescue_xml = self._get_existing_domain_xml(instance, network_info)
unrescue_xml_path = os.path.join(instance_dir, 'unrescue.xml')
libvirt_utils.write_to_file(unrescue_xml_path, unrescue_xml)
...
xml = self._get_guest_xml(context, instance, network_info, disk_info,
image_meta, rescue=rescue_images,
write_to_disk=True)
And when doing unrescue, nova will use xml info in "unrescue.xml" to restore domain, and then delete "unrescue.xml".
Though instance's domain info in memory is correct, xml info in "libvir.xml" is still rescue instance's.
And this should be fixed.
def unrescue(self, instance, network_info):
"""Reboot the VM which is being rescued back into primary images.
"""
instance_dir = libvirt_utils.get_instance_path(instance)
unrescue_xml_path = os.path.join(instance_dir, 'unrescue.xml')
xml = libvirt_utils.load_file(unrescue_xml_path)
** Affects: nova
Importance: Undecided
Assignee: leehom (feli5)
Status: In Progress
** Changed in: nova
Assignee: (unassigned) => leehom (feli5)
** Changed in: nova
Status: New => In Progress
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1558877
Title:
libvirt.xml not change back after doing rescue and unrescue
Status in OpenStack Compute (nova):
In Progress
Bug description:
When doing rescue, instance's xml info will be flush into
"unrescue.xml", and then rescue instance's xml info will be write into
"libvirt.xml"
def rescue(self, context, instance, network_info, image_meta,
rescue_password):
unrescue_xml = self._get_existing_domain_xml(instance, network_info)
unrescue_xml_path = os.path.join(instance_dir, 'unrescue.xml')
libvirt_utils.write_to_file(unrescue_xml_path, unrescue_xml)
...
xml = self._get_guest_xml(context, instance, network_info, disk_info,
image_meta, rescue=rescue_images,
write_to_disk=True)
And when doing unrescue, nova will use xml info in "unrescue.xml" to restore domain, and then delete "unrescue.xml".
Though instance's domain info in memory is correct, xml info in "libvir.xml" is still rescue instance's.
And this should be fixed.
def unrescue(self, instance, network_info):
"""Reboot the VM which is being rescued back into primary images.
"""
instance_dir = libvirt_utils.get_instance_path(instance)
unrescue_xml_path = os.path.join(instance_dir, 'unrescue.xml')
xml = libvirt_utils.load_file(unrescue_xml_path)
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1558877/+subscriptions
Follow ups