e2e: split e2e tests into different suites
This commit splits the e2e tests into different suites that all reuse helper functions from the lib.sh file. This split ensures that the tests within a suite can all have the same setup, e.g. all tests depending on a full-mesh will be set up with a full-mesh, and is resilient against changes in test ordering. Signed-off-by: Lucas Servén Marín <lserven@gmail.com>
This commit is contained in:
27
e2e/location-mesh.sh
Executable file
27
e2e/location-mesh.sh
Executable file
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
# shellcheck disable=SC1091
|
||||
. lib.sh
|
||||
|
||||
setup_suite() {
|
||||
create_cluster
|
||||
# shellcheck disable=SC2016
|
||||
$KUBECTL_BINARY patch ds -n kube-system kilo -p '{"spec": {"template":{"spec":{"containers":[{"name":"kilo","args":["--hostname=$(NODE_NAME)","--create-interface=false","--kubeconfig=/etc/kubernetes/kubeconfig","--mesh-granularity=location"]}]}}}}'
|
||||
block_until_ready_by_name kube-system kilo-userspace
|
||||
$KUBECTL_BINARY wait pod -l app.kubernetes.io/name=adjacency --for=condition=Ready --timeout 3m
|
||||
}
|
||||
|
||||
test_location_mesh_connectivity() {
|
||||
assert "retry 30 5 '' check_ping" "should be able to ping all Pods"
|
||||
assert "retry 10 5 'the adjacency matrix is not complete yet' check_adjacent 12" "adjacency should return the right number of successful pings"
|
||||
echo "sleep for 30s (one reconciliation period) and try again..."
|
||||
sleep 30
|
||||
assert "retry 10 5 'the adjacency matrix is not complete yet' check_adjacent 12" "adjacency should return the right number of successful pings after reconciling"
|
||||
}
|
||||
|
||||
test_location_mesh_peer() {
|
||||
check_peer wg1 e2e 10.5.0.1/32 location
|
||||
}
|
||||
|
||||
teardown_suite () {
|
||||
delete_cluster
|
||||
}
|
Reference in New Issue
Block a user