Use disabled/enabled to change service state

The VM workload consolidation strategy sends 'down' instead
of 'disabled' to change nova-compute service state. This patch
will correct it. The same applies for enabling nova-compute service.

Change-Id: I257411ef711b215bd9b56d0bf0479c79a9ef61d8
Closes-Bug: #1591901
This commit is contained in:
jinquanni
2016-06-16 20:39:32 +08:00
parent e3edc67045
commit 80abcd6fd9
3 changed files with 30 additions and 30 deletions

View File

@@ -56,7 +56,7 @@ class FakerModelCollector(base.BaseClusterModelCollector):
node = hypervisor.Hypervisor()
node.uuid = node_uuid
node.hostname = "hostname_{0}".format(i)
node.state = 'up'
node.state = 'enabled'
mem.set_capacity(node, 64)
disk_capacity.set_capacity(node, 250)

View File

@@ -149,44 +149,44 @@ class TestVMWorkloadConsolidation(base.BaseTestCase):
res = self.strategy.vm_fits(vm_uuid, h, model, cc)
self.assertEqual(False, res)
def test_add_action_activate_hypervisor(self):
def test_add_action_enable_hypervisor(self):
model = self.fake_cluster.generate_scenario_1()
self.m_model.return_value = model
self.fake_metrics.model = model
h = model.get_hypervisor_from_id('Node_0')
self.strategy.add_action_activate_hypervisor(h)
self.strategy.add_action_enable_hypervisor(h)
expected = [{'action_type': 'change_nova_service_state',
'input_parameters': {'state': 'up',
'input_parameters': {'state': 'enabled',
'resource_id': 'Node_0'}}]
self.assertEqual(expected, self.strategy.solution.actions)
def test_add_action_deactivate_hypervisor(self):
def test_add_action_disable_hypervisor(self):
model = self.fake_cluster.generate_scenario_1()
self.m_model.return_value = model
self.fake_metrics.model = model
h = model.get_hypervisor_from_id('Node_0')
self.strategy.add_action_deactivate_hypervisor(h)
self.strategy.add_action_disable_hypervisor(h)
expected = [{'action_type': 'change_nova_service_state',
'input_parameters': {'state': 'down',
'input_parameters': {'state': 'disabled',
'resource_id': 'Node_0'}}]
self.assertEqual(expected, self.strategy.solution.actions)
def test_deactivate_unused_hypervisors(self):
def test_disable_unused_hypervisors(self):
model = self.fake_cluster.generate_scenario_1()
self.m_model.return_value = model
self.fake_metrics.model = model
h1 = model.get_hypervisor_from_id('Node_0')
h2 = model.get_hypervisor_from_id('Node_1')
vm_uuid = 'VM_0'
self.strategy.deactivate_unused_hypervisors(model)
self.strategy.disable_unused_hypervisors(model)
self.assertEqual(0, len(self.strategy.solution.actions))
# Migrate VM to free the hypervisor
self.strategy.add_migration(vm_uuid, h1, h2, model)
self.strategy.deactivate_unused_hypervisors(model)
self.strategy.disable_unused_hypervisors(model)
expected = {'action_type': 'change_nova_service_state',
'input_parameters': {'state': 'down',
'input_parameters': {'state': 'disabled',
'resource_id': 'Node_0'}}
self.assertEqual(2, len(self.strategy.solution.actions))
self.assertEqual(expected, self.strategy.solution.actions[1])