summaryrefslogtreecommitdiffstats
path: root/nova/compute
diff options
context:
space:
mode:
authorJosh Kearney <josh@jk0.org>2011-09-08 16:10:03 -0500
committerJosh Kearney <josh@jk0.org>2011-09-08 16:10:03 -0500
commitaec647b3b42c4cd56a9509c2d1ac25ff12b0664e (patch)
tree560d7c7d7f6f5853005dcd3e0a48b641a1714e4c /nova/compute
parentbb3b61b61dc4b45fba4bdab7ead69af239eac40a (diff)
First pass at adding reboot_type to reboot codepath.
Diffstat (limited to 'nova/compute')
-rw-r--r--nova/compute/api.py5
-rw-r--r--nova/compute/manager.py4
2 files changed, 5 insertions, 4 deletions
diff --git a/nova/compute/api.py b/nova/compute/api.py
index 4e2944bb7..b0ea044c5 100644
--- a/nova/compute/api.py
+++ b/nova/compute/api.py
@@ -1042,13 +1042,14 @@ class API(base.Base):
return recv_meta
@scheduler_api.reroute_compute("reboot")
- def reboot(self, context, instance_id):
+ def reboot(self, context, instance_id, reboot_type):
"""Reboot the given instance."""
self.update(context,
instance_id,
vm_state=vm_states.ACTIVE,
task_state=task_states.REBOOTING)
- self._cast_compute_message('reboot_instance', context, instance_id)
+ self._cast_compute_message('reboot_instance', context, instance_id,
+ reboot_type)
@scheduler_api.reroute_compute("rebuild")
def rebuild(self, context, instance_id, image_href, admin_password,
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 0477db745..0be12297f 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -579,7 +579,7 @@ class ComputeManager(manager.SchedulerDependentManager):
@exception.wrap_exception(notifier=notifier, publisher_id=publisher_id())
@checks_instance_lock
- def reboot_instance(self, context, instance_id):
+ def reboot_instance(self, context, instance_id, reboot_type="SOFT"):
"""Reboot an instance on this host."""
LOG.audit(_("Rebooting instance %s"), instance_id, context=context)
context = context.elevated()
@@ -601,7 +601,7 @@ class ComputeManager(manager.SchedulerDependentManager):
context=context)
network_info = self._get_instance_nw_info(context, instance_ref)
- self.driver.reboot(instance_ref, network_info)
+ self.driver.reboot(instance_ref, network_info, reboot_type)
current_power_state = self._get_power_state(context, instance_ref)
self._instance_update(context,