diff --git a/scripts/test-helpers b/scripts/test-helpers index d1aee3171e94..c34cc3bda93f 100755 --- a/scripts/test-helpers +++ b/scripts/test-helpers @@ -430,7 +430,7 @@ provision-cluster() { provision-server timeout --foreground 120s bash -c "wait-for-kubeconfig $i" done - export KUBECONFIG=$TEST_DIR/servers/1/kubeconfig.yaml + export KUBECONFIG=$TEST_DIR/servers/${KUBECONFIG_SERVER:-1}/kubeconfig.yaml if [ $NUM_AGENTS -gt 0 ]; then for _ in $(seq 1 $NUM_AGENTS); do diff --git a/scripts/test-run-etcd b/scripts/test-run-etcd index 5555664829ad..3ee1c889abf9 100755 --- a/scripts/test-run-etcd +++ b/scripts/test-run-etcd @@ -38,6 +38,17 @@ LABEL="ETCD-JOIN-BASIC" SERVER_ARGS="" run-test # --- create a basic cluster to test joining a managed etcd cluster with --agent-token set LABEL="ETCD-JOIN-AGENTTOKEN" SERVER_ARGS="--agent-token ${RANDOM}${RANDOM}${RANDOM}" run-test +# --- create a cluster with one etcd-only server, one control-plane-only server, and one agent +server-post-hook() { + if [ $1 -eq 1 ]; then + local url=$(cat $TEST_DIR/servers/1/metadata/url) + export SERVER_ARGS="${SERVER_ARGS} --server $url" + fi +} +export -f server-post-hook +LABEL="ETCD-SPLIT-ROLE" NUM_AGENTS=1 KUBECONFIG_SERVER=2 SERVER_1_ARGS="--cluster-init --disable-apiserver --disable-controller-manager --disable-scheduler" SERVER_2_ARGS="--disable-etcd" run-test + + # The following tests deploy clusters of mixed versions. The traefik helm chart may not deploy # correctly until all servers have been upgraded to the same release, so don't wait for it. all_services=(