diff --git a/fuel_health/config.py b/fuel_health/config.py index 390b66b3..61f9a3a0 100644 --- a/fuel_health/config.py +++ b/fuel_health/config.py @@ -629,6 +629,7 @@ class NailgunConfig(object): for node in online_controllers: online_controllers_ips.append(node['ip']) + LOG.info("Online controllers ips is %s" % online_controllers_ips) self.compute.public_ips = public_ips self.compute.controller_nodes = controller_ips diff --git a/fuel_health/nmanager.py b/fuel_health/nmanager.py index 583fcee1..2dccf363 100644 --- a/fuel_health/nmanager.py +++ b/fuel_health/nmanager.py @@ -16,6 +16,7 @@ import logging import os +import socket import time import traceback @@ -728,6 +729,18 @@ class NovaNetworkScenarioTest(OfficialClientTest): """Find host where nova-network works.""" if 'neutron' in self.config.network.network_provider: return self.host[0] + if self.config.compute.use_vcenter: + command = "pcs status|grep nova-network|awk {'print $4'}" + ssh = SSHClient(self.host[0], + self.usr, self.pwd, + key_filename=self.key, + timeout=timeout) + n_net_nodename = self.retry_command(retries[0], + retries[1], + ssh.exec_command, + cmd=command).strip() + get_n_net_nodename = socket.gethostbyname(n_net_nodename) + return get_n_net_nodename else: services = self.compute_client.services.list() net_service = filter( diff --git a/fuel_health/tests/smoke/test_nova_create_instance_with_connectivity.py b/fuel_health/tests/smoke/test_nova_create_instance_with_connectivity.py index 5fe94e81..7211ee10 100644 --- a/fuel_health/tests/smoke/test_nova_create_instance_with_connectivity.py +++ b/fuel_health/tests/smoke/test_nova_create_instance_with_connectivity.py @@ -50,8 +50,8 @@ class TestNovaNetwork(nmanager.NovaNetworkScenarioTest): def setUp(self): super(TestNovaNetwork, self).setUp() self.check_clients_state() - if not self.config.compute.compute_nodes and \ - self.config.compute.libvirt_type != 'vcenter': + if (not self.config.compute.compute_nodes and + not self.config.compute.use_vcenter): self.skipTest('There are no compute nodes') def tearDown(self): @@ -274,7 +274,7 @@ class TestNovaNetwork(nmanager.NovaNetworkScenarioTest): for addr in server.addresses: if addr.startswith('novanetwork'): instance_ip = server.addresses[addr][0]['addr'] - if self.config.compute.libvirt_type != 'vcenter': + if not self.config.compute.use_vcenter: compute = getattr(server, 'OS-EXT-SRV-ATTR:host') else: compute = None diff --git a/fuel_health/tests/smoke/test_vcenter.py b/fuel_health/tests/smoke/test_vcenter.py index 84eb19e7..314977de 100644 --- a/fuel_health/tests/smoke/test_vcenter.py +++ b/fuel_health/tests/smoke/test_vcenter.py @@ -207,6 +207,7 @@ class TestVcenter(nmanager.NovaNetworkScenarioTest): name = rand_name('ost1_test-server-smoke-') security_groups = [self.security_groups[self.tenant_id].name] img_name = 'TestVM-VMDK' + compute = None server = self.verify( 250, self._create_server, 2, @@ -218,10 +219,6 @@ class TestVcenter(nmanager.NovaNetworkScenarioTest): for addr in server.addresses: if addr.startswith('novanetwork'): instance_ip = server.addresses[addr][0]['addr'] - if self.config.compute.libvirt_type != 'vcenter': - compute = getattr(server, 'OS-EXT-SRV-ATTR:host') - else: - compute = None except Exception: LOG.debug(traceback.format_exc()) self.fail("Step 3 failed: cannot get instance details. "