z/VM Driver: add get console output

Implement get_console_output for zvm virt driver.

Change-Id: I2158d34a87ca9104076bd234134aa4cab9c4e882
blueprint: add-zvm-driver-rocky
This commit is contained in:
Huang Rui 2018-02-12 13:49:43 +08:00 committed by jichenjc
parent cc06ee1766
commit 50906f150f
4 changed files with 22 additions and 0 deletions

View File

@ -498,3 +498,10 @@ class TestZVMDriver(test.NoDBTestCase):
id=10)
self.assertTrue(self._driver.instance_exists(self._instance))
self.assertFalse(self._driver.instance_exists(another_instance))
@mock.patch('nova.virt.zvm.utils.ConnectorClient.call')
def test_get_console_output(self, call):
call.return_value = 'console output'
outputs = self._driver.get_console_output(None, self._instance)
call.assert_called_once_with('guest_get_console_output', 'abc00001')
self.assertEqual('console output', outputs)

View File

@ -139,3 +139,8 @@ class TestZVMHypervisor(test.NoDBTestCase):
def test_guest_reset(self, mcall):
self._hypervisor.guest_reset('guest')
mcall.assert_called_once_with('guest_reset', 'guest')
@mock.patch('nova.virt.zvm.utils.ConnectorClient.call')
def test_guest_get_console_output(self, mcall):
self._hypervisor.guest_get_console_output('guest')
mcall.assert_called_once_with('guest_get_console_output', 'guest')

View File

@ -396,3 +396,6 @@ class ZVMDriver(driver.ComputeDriver):
self._hypervisor.guest_reboot(instance.name)
else:
self._hypervisor.guest_reset(instance.name)
def get_console_output(self, context, instance):
return self._hypervisor.guest_get_console_output(instance.name)

View File

@ -143,6 +143,13 @@ class Hypervisor(object):
def guest_reset(self, name):
self._reqh.call('guest_reset', name)
def guest_get_console_output(self, name):
"""get console out put of the given instance
:returns: The output of the console of the instace, in string format.
"""
return self._reqh.call('guest_get_console_output', name)
def image_query(self, imagename):
"""Check whether image is there or not