mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
CI: extend replication layouts tests with KRA
KRA should be tested with warious replication topologies as well, mainly in domain level 0 https://fedorahosted.org/freeipa/ticket/6088 Reviewed-By: Pavel Vomacka <pvomacka@redhat.com>
This commit is contained in:
parent
118d455027
commit
bf79998813
@ -994,12 +994,20 @@ def double_circle_topo(master, replicas, site_size=6):
|
|||||||
|
|
||||||
|
|
||||||
def install_topo(topo, master, replicas, clients, domain_level=None,
|
def install_topo(topo, master, replicas, clients, domain_level=None,
|
||||||
skip_master=False, setup_replica_cas=True):
|
skip_master=False, setup_replica_cas=True,
|
||||||
|
setup_replica_kras=False):
|
||||||
"""Install IPA servers and clients in the given topology"""
|
"""Install IPA servers and clients in the given topology"""
|
||||||
|
if setup_replica_kras and not setup_replica_cas:
|
||||||
|
raise ValueError("Option 'setup_replica_kras' requires "
|
||||||
|
"'setup_replica_cas' set to True")
|
||||||
replicas = list(replicas)
|
replicas = list(replicas)
|
||||||
installed = {master}
|
installed = {master}
|
||||||
if not skip_master:
|
if not skip_master:
|
||||||
install_master(master, domain_level=domain_level)
|
install_master(
|
||||||
|
master,
|
||||||
|
domain_level=domain_level,
|
||||||
|
setup_kra=setup_replica_kras
|
||||||
|
)
|
||||||
|
|
||||||
add_a_records_for_hosts_in_master_domain(master)
|
add_a_records_for_hosts_in_master_domain(master)
|
||||||
|
|
||||||
@ -1009,7 +1017,11 @@ def install_topo(topo, master, replicas, clients, domain_level=None,
|
|||||||
connect_replica(parent, child)
|
connect_replica(parent, child)
|
||||||
else:
|
else:
|
||||||
log.info('Installing replica %s from %s' % (parent, child))
|
log.info('Installing replica %s from %s' % (parent, child))
|
||||||
install_replica(parent, child, setup_ca=setup_replica_cas)
|
install_replica(
|
||||||
|
parent, child,
|
||||||
|
setup_ca=setup_replica_cas,
|
||||||
|
setup_kra=setup_replica_kras
|
||||||
|
)
|
||||||
installed.add(child)
|
installed.add(child)
|
||||||
install_clients([master] + replicas, clients)
|
install_clients([master] + replicas, clients)
|
||||||
|
|
||||||
|
@ -52,6 +52,16 @@ class TestLineTopologyWithCA(LayoutsBaseTest):
|
|||||||
self.replication_is_working()
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
|
class TestLineTopologyWithCAKRA(LayoutsBaseTest):
|
||||||
|
|
||||||
|
num_replicas = 3
|
||||||
|
|
||||||
|
def test_line_topology_with_ca_kra(self):
|
||||||
|
tasks.install_topo('line', self.master, self.replicas, [],
|
||||||
|
setup_replica_cas=True, setup_replica_kras=True)
|
||||||
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
class TestStarTopologyWithoutCA(LayoutsBaseTest):
|
class TestStarTopologyWithoutCA(LayoutsBaseTest):
|
||||||
|
|
||||||
num_replicas = 3
|
num_replicas = 3
|
||||||
@ -72,6 +82,16 @@ class TestStarTopologyWithCA(LayoutsBaseTest):
|
|||||||
self.replication_is_working()
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
|
class TestStarTopologyWithCAKRA(LayoutsBaseTest):
|
||||||
|
|
||||||
|
num_replicas = 3
|
||||||
|
|
||||||
|
def test_star_topology_with_ca_kra(self):
|
||||||
|
tasks.install_topo('star', self.master, self.replicas, [],
|
||||||
|
setup_replica_cas=True, setup_replica_kras=True)
|
||||||
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
class TestCompleteTopologyWithoutCA(LayoutsBaseTest):
|
class TestCompleteTopologyWithoutCA(LayoutsBaseTest):
|
||||||
|
|
||||||
num_replicas = 3
|
num_replicas = 3
|
||||||
@ -92,6 +112,16 @@ class TestCompleteTopologyWithCA(LayoutsBaseTest):
|
|||||||
self.replication_is_working()
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
|
class TestCompleteTopologyWithCAKRA(LayoutsBaseTest):
|
||||||
|
|
||||||
|
num_replicas = 3
|
||||||
|
|
||||||
|
def test_complete_topology_with_ca_kra(self):
|
||||||
|
tasks.install_topo('complete', self.master, self.replicas, [],
|
||||||
|
setup_replica_cas=True, setup_replica_kras=True)
|
||||||
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.skipif(config.domain_level == DOMAIN_LEVEL_0,
|
@pytest.mark.skipif(config.domain_level == DOMAIN_LEVEL_0,
|
||||||
reason='does not work on DOMAIN_LEVEL_0 by design')
|
reason='does not work on DOMAIN_LEVEL_0 by design')
|
||||||
class Test2ConnectedTopologyWithoutCA(LayoutsBaseTest):
|
class Test2ConnectedTopologyWithoutCA(LayoutsBaseTest):
|
||||||
@ -112,6 +142,15 @@ class Test2ConnectedTopologyWithCA(LayoutsBaseTest):
|
|||||||
self.replication_is_working()
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
|
class Test2ConnectedTopologyWithCAKRA(LayoutsBaseTest):
|
||||||
|
num_replicas = 33
|
||||||
|
|
||||||
|
def test_2_connected_topology_with_ca_kra(self):
|
||||||
|
tasks.install_topo('2-connected', self.master, self.replicas, [],
|
||||||
|
setup_replica_cas=True, setup_replica_kras=True)
|
||||||
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.skipif(config.domain_level == DOMAIN_LEVEL_0,
|
@pytest.mark.skipif(config.domain_level == DOMAIN_LEVEL_0,
|
||||||
reason='does not work on DOMAIN_LEVEL_0 by design')
|
reason='does not work on DOMAIN_LEVEL_0 by design')
|
||||||
class TestDoubleCircleTopologyWithoutCA(LayoutsBaseTest):
|
class TestDoubleCircleTopologyWithoutCA(LayoutsBaseTest):
|
||||||
@ -130,3 +169,12 @@ class TestDoubleCircleTopologyWithCA(LayoutsBaseTest):
|
|||||||
tasks.install_topo('double-circle', self.master, self.replicas, [],
|
tasks.install_topo('double-circle', self.master, self.replicas, [],
|
||||||
setup_replica_cas=True)
|
setup_replica_cas=True)
|
||||||
self.replication_is_working()
|
self.replication_is_working()
|
||||||
|
|
||||||
|
|
||||||
|
class TestDoubleCircleTopologyWithCAKRA(LayoutsBaseTest):
|
||||||
|
num_replicas = 29
|
||||||
|
|
||||||
|
def test_2_connected_topology_with_ca_kra(self):
|
||||||
|
tasks.install_topo('double-circle', self.master, self.replicas, [],
|
||||||
|
setup_replica_cas=True, setup_replica_kras=True)
|
||||||
|
self.replication_is_working()
|
||||||
|
Loading…
Reference in New Issue
Block a user