diff options
Diffstat (limited to 'nova')
-rw-r--r-- | nova/tests/baremetal/test_virtual_power_driver.py | 41 | ||||
-rw-r--r-- | nova/virt/baremetal/virtual_power_driver.py | 2 | ||||
-rw-r--r-- | nova/virt/baremetal/virtual_power_driver_settings.py | 2 |
3 files changed, 30 insertions, 15 deletions
diff --git a/nova/tests/baremetal/test_virtual_power_driver.py b/nova/tests/baremetal/test_virtual_power_driver.py index 4b140f66a..64dccabdd 100644 --- a/nova/tests/baremetal/test_virtual_power_driver.py +++ b/nova/tests/baremetal/test_virtual_power_driver.py @@ -188,7 +188,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.ReplayAll() name = self.pm._check_for_node() - self.assertEqual(name, 'testNode') + self.assertEqual(name, '"testNode"') self.mox.VerifyAll() def test_check_for_node_not_found(self): @@ -214,7 +214,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn("testNode") + self.pm._check_for_node().AndReturn('"testNode"') self.pm._run_command(self.pm._vp_cmd.start_cmd).AndReturn("Started") self.pm.is_power_on().AndReturn(True) self.mox.ReplayAll() @@ -229,7 +229,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn("testNode") + self.pm._check_for_node().AndReturn('"testNode"') self.pm._run_command(self.pm._vp_cmd.start_cmd).AndReturn("Started") self.pm.is_power_on().AndReturn(False) self.mox.ReplayAll() @@ -244,7 +244,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn("testNode") + self.pm._check_for_node().AndReturn('"testNode"') self.pm.is_power_on().AndReturn(True) self.pm._run_command(self.pm._vp_cmd.stop_cmd).AndReturn("Stopped") self.pm.is_power_on().AndReturn(False) @@ -260,7 +260,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn("testNode") + self.pm._check_for_node().AndReturn('"testNode"') self.pm.is_power_on().AndReturn(True) self.pm._run_command(self.pm._vp_cmd.stop_cmd).AndReturn("Stopped") self.pm.is_power_on().AndReturn(True) @@ -276,7 +276,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn(["testNode"]) + self.pm._check_for_node().AndReturn(['"testNode"']) self.pm._run_command(self.pm._vp_cmd.reboot_cmd).AndReturn("Restarted") self.pm.is_power_on().AndReturn(True) self.mox.ReplayAll() @@ -291,7 +291,7 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') self.mox.StubOutWithMock(self.pm, 'is_power_on') - self.pm._check_for_node().AndReturn(["testNode"]) + self.pm._check_for_node().AndReturn(['"testNode"']) self.pm._run_command(self.pm._vp_cmd.reboot_cmd).AndReturn("Restarted") self.pm.is_power_on().AndReturn(False) self.mox.ReplayAll() @@ -305,9 +305,9 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') - self.pm._check_for_node().AndReturn(["testNode"]) + self.pm._check_for_node().AndReturn(['"testNode"']) self.pm._run_command(self.pm._vp_cmd.list_running_cmd).\ - AndReturn(["testNode"]) + AndReturn(['"testNode"']) self.pm._matched_name = 'testNode' self.mox.ReplayAll() state = self.pm.is_power_on() @@ -320,15 +320,30 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(self.pm, '_run_command') - self.pm._check_for_node().AndReturn(["NotFoundNode"]) + self.pm._check_for_node().AndReturn(['"NotFoundNode"']) self.pm._run_command(self.pm._vp_cmd.list_running_cmd).\ - AndReturn(["NotFoundNode"]) + AndReturn(['"NotFoundNode"']) self.pm._matched_name = 'testNode' self.mox.ReplayAll() state = self.pm.is_power_on() self.assertEqual(state, False) self.mox.VerifyAll() + def test_is_power_on_match_subname(self): + self._create_node() + self._create_pm() + + self.mox.StubOutWithMock(self.pm, '_check_for_node') + self.mox.StubOutWithMock(self.pm, '_run_command') + self.pm._check_for_node().AndReturn(['"testNode"']) + self.pm._run_command(self.pm._vp_cmd.list_running_cmd).\ + AndReturn(['"testNode01"']) + self.pm._matched_name = '"testNode"' + self.mox.ReplayAll() + state = self.pm.is_power_on() + self.assertEqual(state, False) + self.mox.VerifyAll() + def test_run_command(self): self._create_node() self._create_pm() @@ -368,8 +383,8 @@ class VPDClassMethodsTestCase(BareMetalVPDTestCase): self.mox.StubOutWithMock(self.pm, '_check_for_node') self.mox.StubOutWithMock(nutils, 'ssh_execute') - self.pm._check_for_node().AndReturn(["testNode"]) - self.pm._check_for_node().AndReturn(["testNode"]) + self.pm._check_for_node().AndReturn(['"testNode"']) + self.pm._check_for_node().AndReturn(['"testNode"']) nutils.ssh_execute('test', '/usr/bin/VBoxManage startvm ', check_exit_code=True).\ AndRaise(exception.ProcessExecutionError) diff --git a/nova/virt/baremetal/virtual_power_driver.py b/nova/virt/baremetal/virtual_power_driver.py index d3f612ddd..2313f9808 100644 --- a/nova/virt/baremetal/virtual_power_driver.py +++ b/nova/virt/baremetal/virtual_power_driver.py @@ -145,7 +145,7 @@ class VirtualPowerManager(base.PowerManager): for mac in mac_address_list: if self._mac_address.lower() in mac.lower(): - self._matched_name = node + self._matched_name = ('"%s"' % node) break if self._matched_name: break diff --git a/nova/virt/baremetal/virtual_power_driver_settings.py b/nova/virt/baremetal/virtual_power_driver_settings.py index 6f6b28cd6..cd85bddbc 100644 --- a/nova/virt/baremetal/virtual_power_driver_settings.py +++ b/nova/virt/baremetal/virtual_power_driver_settings.py @@ -52,7 +52,7 @@ class virsh(object): self.reboot_cmd = 'reset {_NodeName_}' self.list_cmd = "list --all | tail -n +2 | awk -F\" \" '{print $2}'" self.list_running_cmd = \ - "list --all|grep running|awk -F\" \" '{print $2}'" + "list --all|grep running|awk -F\" \" '{print \"$2\"}'" self.get_node_macs = ("dumpxml {_NodeName_} | grep " '"mac address" | awk -F' '"' |