Merge "[Podified] Run test_list_nodes_processes only on compute nodes"

This commit is contained in:
Zuul 2024-02-12 09:26:56 +00:00 committed by Gerrit Code Review
commit 3e02c53933
4 changed files with 11 additions and 3 deletions

View File

@ -65,3 +65,5 @@ verify_osp_version = _topology.verify_osp_version
get_config_setting = _topology.get_config_setting get_config_setting = _topology.get_config_setting
node_name_from_hostname = _topology.node_name_from_hostname node_name_from_hostname = _topology.node_name_from_hostname
remove_duplications = _topology.remove_duplications remove_duplications = _topology.remove_duplications
OpenstackGroupNamesType = _topology.OpenstackGroupNamesType

View File

@ -45,8 +45,8 @@ LOG = log.getLogger(__name__)
PatternType = type(re.compile(r'.*')) PatternType = type(re.compile(r'.*'))
OpenstackGroupNameType = typing.Union[str, typing.Pattern] OpenstackGroupNameType = typing.Union[str, typing.Pattern]
OpenstackGroupNamesType = typing.Union[OpenstackGroupNameType, typing.Iterable[ OpenstackGroupNamesType = typing.Optional[typing.Union[
OpenstackGroupNameType]] OpenstackGroupNameType, typing.Iterable[OpenstackGroupNameType]]]
HostAddressType = typing.Union[str, netaddr.IPAddress] HostAddressType = typing.Union[str, netaddr.IPAddress]

View File

@ -37,6 +37,8 @@ PatternType = type(re.compile(r''))
@keystone.skip_unless_has_keystone_credentials() @keystone.skip_unless_has_keystone_credentials()
class OpenStackTopologyTest(testtools.TestCase): class OpenStackTopologyTest(testtools.TestCase):
expected_group: topology.OpenstackGroupNamesType = None
@property @property
def topology(self) -> topology.OpenStackTopology: def topology(self) -> topology.OpenStackTopology:
return topology.get_openstack_topology() return topology.get_openstack_topology()
@ -134,7 +136,8 @@ class OpenStackTopologyTest(testtools.TestCase):
self.assertEqual(expected_nodes, actual_nodes) self.assertEqual(expected_nodes, actual_nodes)
def test_list_nodes_processes(self): def test_list_nodes_processes(self):
node = random.choice(topology.list_openstack_nodes()) node = random.choice(topology.list_openstack_nodes(
group=self.expected_group))
filename = sh.execute( filename = sh.execute(
'mktemp', ssh_client=node.ssh_client).stdout.strip() 'mktemp', ssh_client=node.ssh_client).stdout.strip()
self.addCleanup(sh.execute, f"rm -f '{filename}'", self.addCleanup(sh.execute, f"rm -f '{filename}'",

View File

@ -16,6 +16,7 @@
from __future__ import absolute_import from __future__ import absolute_import
import tobiko import tobiko
from tobiko.openstack import topology
from tobiko.shell import ping from tobiko.shell import ping
from tobiko.shell import sh from tobiko.shell import sh
from tobiko.tests.functional.openstack import test_topology from tobiko.tests.functional.openstack import test_topology
@ -25,6 +26,8 @@ from tobiko import podified
@podified.skip_if_not_podified @podified.skip_if_not_podified
class PodifiedTopologyTest(test_topology.OpenStackTopologyTest): class PodifiedTopologyTest(test_topology.OpenStackTopologyTest):
expected_group: topology.OpenstackGroupNamesType = 'compute'
@property @property
def topology(self) -> podified.PodifiedTopology: def topology(self) -> podified.PodifiedTopology:
return tobiko.setup_fixture(podified.PodifiedTopology) return tobiko.setup_fixture(podified.PodifiedTopology)