Changes to tolerations test. Make it complete quicker.

This commit is contained in:
Jan Mußler 2020-10-27 13:14:25 +01:00
parent e6b71cbb98
commit 8dc6c08cf7
2 changed files with 20 additions and 9 deletions

View File

@ -262,10 +262,10 @@ class K8sBase:
self.labels=labels
self.namespace=namespace
def get_pg_nodes(self, pg_cluster_name, namespace='default'):
def get_pg_nodes(self, pg_cluster_labels='cluster-name=acid-minimal-cluster', namespace='default'):
master_pod_node = ''
replica_pod_nodes = []
podsList = self.api.core_v1.list_namespaced_pod(namespace, label_selector=pg_cluster_name)
podsList = self.api.core_v1.list_namespaced_pod(namespace, label_selector=pg_cluster_labels)
for pod in podsList.items:
if pod.metadata.labels.get('spilo-role') == 'master':
master_pod_node = pod.spec.node_name
@ -274,6 +274,18 @@ class K8sBase:
return master_pod_node, replica_pod_nodes
def get_cluster_nodes(self, cluster_labels='cluster-name=acid-minimal-cluster', namespace='default'):
m = []
r = []
podsList = self.api.core_v1.list_namespaced_pod(namespace, label_selector=cluster_labels)
for pod in podsList.items:
if pod.metadata.labels.get('spilo-role') == 'master' and pod.status.phase == 'Running':
m.append(pod.spec.node_name)
elif pod.metadata.labels.get('spilo-role') == 'replica' and pod.status.phase == 'Running':
r.append(pod.spec.node_name)
return m, r
def wait_for_operator_pod_start(self):
self.wait_for_pod_start("name=postgres-operator")

View File

@ -691,12 +691,10 @@ class EndToEndTestCase(unittest.TestCase):
self.eventuallyEqual(lambda: len(k8s.get_patroni_running_members("acid-minimal-cluster-0")), 2, "Postgres status did not enter running")
# get nodes of master and replica(s) (expected target of new master)
current_master_node, current_replica_nodes = k8s.get_pg_nodes(cluster_label)
num_replicas = len(current_replica_nodes)
master_nodes, replica_nodes = k8s.get_cluster_nodes()
self.assertNotEqual(current_master_node, '')
self.assertTrue(num_replicas, 1)
failover_targets = self.get_failover_targets(current_master_node, current_replica_nodes)
self.assertNotEqual(master_nodes, [])
self.assertNotEqual(replica_nodes, [])
# taint node with postgres=:NoExecute to force failover
body = {
@ -710,8 +708,9 @@ class EndToEndTestCase(unittest.TestCase):
}
}
k8s.api.core_v1.patch_node(current_master_node, body)
new_master_node, new_replica_nodes = self.assert_failover(current_master_node, num_replicas, failover_targets, cluster_label)
k8s.api.core_v1.patch_node(master_nodes[0], body)
self.eventuallyTrue(k8s.get_closter_nodes()[0], replica_nodes)
self.assertNotEqual(k8s.get_closter_nodes()[0], master_nodes)
# add toleration to pods
patch_toleration_config = {