raise NotImplementedError
@staticmethod
- def _RemoveConfigFile(instance):
+ def _RemoveConfigFile(instance_name):
"""Remove the xen configuration file.
"""
- utils.RemoveFile("/etc/xen/%s" % instance.name)
+ utils.RemoveFile("/etc/xen/%s" % instance_name)
@staticmethod
def _GetXMList(include_node):
def StopInstance(self, instance, force=False):
"""Stop an instance."""
- self._RemoveConfigFile(instance)
+ self._RemoveConfigFile(instance.name)
if force:
command = ["xm", "destroy", instance.name]
else:
if result.failed:
raise errors.HypervisorError("Failed to migrate instance %s: %s" %
(instance, result.output))
+ # remove old xen file after migration succeeded
+ try:
+ self._RemoveConfigFile(instance)
+ except EnvironmentError, err:
+ logger.Error("Failure while removing instance config file: %s" %
+ str(err))
class XenPvmHypervisor(XenHypervisor):