Merge "Fix test_overcloud_processes_running on OSP17"
This commit is contained in:
commit
9c4a8d6680
|
@ -23,6 +23,7 @@ from tobiko import config
|
|||
from tobiko.openstack import keystone
|
||||
from tobiko.openstack import ironic
|
||||
from tobiko.openstack import nova
|
||||
from tobiko.openstack import topology
|
||||
from tobiko.shell import sh
|
||||
from tobiko.shell import ssh
|
||||
from tobiko.tripleo import _undercloud
|
||||
|
@ -243,3 +244,14 @@ def get_overcloud_nodes_dataframe(oc_node_df_function):
|
|||
node_name in oc_nodes_names]
|
||||
oc_procs_df = pandas.concat(oc_nodes_dfs, ignore_index=True)
|
||||
return oc_procs_df
|
||||
|
||||
|
||||
def is_redis_expected():
|
||||
if topology.verify_osp_version('17.0', lower=True):
|
||||
return True
|
||||
services_requiring_redis = (
|
||||
'designate', 'octavia', 'ceilometer', 'gnocchi', 'panko')
|
||||
for service in services_requiring_redis:
|
||||
if keystone.has_service(name=service):
|
||||
return True
|
||||
return False
|
||||
|
|
|
@ -127,7 +127,6 @@ class OvercloudProcessesStatus(object):
|
|||
Checks that the oc_procs_df dataframe has all of the list procs
|
||||
:return: Bool
|
||||
"""
|
||||
|
||||
for attempt_number in range(600):
|
||||
|
||||
try:
|
||||
|
@ -138,6 +137,25 @@ class OvercloudProcessesStatus(object):
|
|||
self.oc_procs_df.query('PROCESS=="{}"'.format(
|
||||
process_name)).empty:
|
||||
process_name = 'neutron-server:'
|
||||
# osp17 mysqld process name is mysqld_safe
|
||||
if process_name == 'mysqld' and \
|
||||
self.oc_procs_df.query('PROCESS=="{}"'.format(
|
||||
process_name)).empty:
|
||||
process_name = 'mysqld_safe'
|
||||
# redis not deployed on osp17 by default, only if some
|
||||
# other services such as designate and octavia are deployed
|
||||
if (process_name == 'redis-server' and
|
||||
not overcloud.is_redis_expected()):
|
||||
redis_message = ("redis-server not expected on OSP 17 "
|
||||
"and later releases by default")
|
||||
if self.oc_procs_df.query(
|
||||
f'PROCESS=="{process_name}"').empty:
|
||||
LOG.info(redis_message)
|
||||
continue
|
||||
else:
|
||||
raise OvercloudProcessesException(
|
||||
process_error=redis_message)
|
||||
|
||||
if not self.oc_procs_df.query('PROCESS=="{}"'.format(
|
||||
process_name)).empty:
|
||||
LOG.info("overcloud processes status checks: "
|
||||
|
|
Loading…
Reference in New Issue