Merge "Implement "get_hostname" in SSH client class"

This commit is contained in:
Zuul 2020-11-18 22:41:52 +00:00 committed by Gerrit Code Review
commit dd8f25d0b6
3 changed files with 9 additions and 2 deletions

View File

@ -286,6 +286,13 @@ class Client(ssh.Client):
command=shell, host=self.host, script=script, stderr=stderr,
stdout=stdout, exit_status=exit_status)
def get_hostname(self):
"""Retrieve the remote machine hostname"""
try:
return self.exec_command('hostname')
except exceptions.SSHExecCommandFailed:
return self.exec_command('cat /etc/hostname')
def _buffer_to_string(data_buffer, encoding):
return data_buffer.decode(encoding).replace("\r\n", "\n").replace(

View File

@ -519,7 +519,7 @@ class BaseTempestTestCase(base_api.BaseNetworkTest):
pkey=self.keypair['private_key'],
**kwargs)
self.assertIn(server['name'],
ssh_client.exec_command('hostname'))
ssh_client.get_hostname())
except (lib_exc.SSHTimeout, ssh_exc.AuthenticationException) as ssh_e:
LOG.debug(ssh_e)
if log_errors:

View File

@ -59,7 +59,7 @@ class InternalDNSTest(base.BaseTempestTestCase):
CONF.validation.image_ssh_user,
pkey=self.keypair['private_key'])
self.assertIn('luke', ssh_client.exec_command('hostname'))
self.assertIn('luke', ssh_client.get_hostname())
leia_port = self.client.list_ports(
network_id=self.network['id'],