From 131c1ab6e929de80d4e473994cacf48a2706026b Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mar 29 2019 08:54:03 +0000 Subject: More test fixes Fixes: https://pagure.io/freeipa/issue/7892 Signed-off-by: Christian Heimes Reviewed-By: Thomas Woerner Reviewed-By: Francois Cami --- diff --git a/ipatests/test_integration/test_replica_promotion.py b/ipatests/test_integration/test_replica_promotion.py index 3be2ea9..9ce0074 100644 --- a/ipatests/test_integration/test_replica_promotion.py +++ b/ipatests/test_integration/test_replica_promotion.py @@ -843,7 +843,7 @@ class TestHiddenReplicaPromotion(IntegrationTest): def _check_server_role(self, host, status): roles = [u'IPA master', u'CA server', u'KRA server', u'DNS server'] for role in roles: - result = self.master.run_command([ + result = self.replicas[0].run_command([ 'ipa', 'server-role-find', '--server', host.hostname, '--role', role @@ -859,7 +859,7 @@ class TestHiddenReplicaPromotion(IntegrationTest): 'IPA DNS servers' ] - result = self.master.run_command(['ipa', 'config-show']) + result = self.replicas[0].run_command(['ipa', 'config-show']) values = {} for line in result.stdout_text.split('\n'): if ':' not in line: @@ -868,8 +868,9 @@ class TestHiddenReplicaPromotion(IntegrationTest): values[k.strip()] = {item.strip() for item in v.split(',')} for service in services: - assert values[service] == enabled - assert values['Hidden {}'.format(service)] == hidden + hservice = 'Hidden {}'.format(service) + assert values.get(service, set()) == enabled + assert values.get(hservice, set()) == hidden def test_hidden_replica_install(self): # TODO: check that all services are running on hidden replica @@ -909,19 +910,26 @@ class TestHiddenReplicaPromotion(IntegrationTest): # backup backup_path = backup(self.replicas[0]) # uninstall - tasks.uninstall_replica(self.master, self.replicas[0]) + tasks.uninstall_master(self.replicas[0]) # restore dirman_password = self.master.config.dirman_password self.replicas[0].run_command( ['ipa-restore', backup_path], stdin_text=dirman_password + '\nyes' ) + # give replication some time + time.sleep(5) + # check that role is still hidden + tasks.kinit_admin(self.replicas[0]) + self._check_config([self.master], [self.replicas[0]]) self._check_server_role(self.replicas[0], 'hidden') self._check_dnsrecords([self.master], [self.replicas[0]]) + # check that the resulting server can be promoted to enabled self.replicas[0].run_command([ 'ipa', 'server-mod', self.replicas[0].hostname, '--state=enabled' ]) + self._check_config([self.master, self.replicas[0]]) self._check_server_role(self.replicas[0], 'enabled') self._check_dnsrecords([self.master, self.replicas[0]])