From 3ac3b4e5d7e7e0161b0288e13dead5032e93d08e Mon Sep 17 00:00:00 2001 From: jwcesign Date: Wed, 22 Mar 2023 17:07:43 +0800 Subject: [PATCH] Fix cli failure Signed-off-by: jwcesign --- hack/cli-testing-environment.sh | 9 +++++++-- hack/util.sh | 22 ++++++++++++++++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/hack/cli-testing-environment.sh b/hack/cli-testing-environment.sh index 8599d8b91..5c0208694 100755 --- a/hack/cli-testing-environment.sh +++ b/hack/cli-testing-environment.sh @@ -38,11 +38,16 @@ hack/create-cluster.sh ${MEMBER_CLUSTER_2_NAME} ${KUBECONFIG_PATH}/${MEMBER_CLUS # wait cluster ready echo "Wait clusters ready..." util::wait_file_exist ${KUBECONFIG_PATH}/${HOST_CLUSTER_NAME}.config 300 -util::wait_file_exist ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_1_NAME}.config 300 -util::wait_file_exist ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_2_NAME}.config 300 kubectl wait --for=condition=Ready nodes --all --timeout=800s --kubeconfig=${KUBECONFIG_PATH}/${HOST_CLUSTER_NAME}.config +util::wait_nodes_taint_disappear 800 ${KUBECONFIG_PATH}/${HOST_CLUSTER_NAME}.config + +util::wait_file_exist ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_1_NAME}.config 300 kubectl wait --for=condition=Ready nodes --all --timeout=800s --kubeconfig=${KUBECONFIG_PATH}/${MEMBER_CLUSTER_1_NAME}.config +util::wait_nodes_taint_disappear 800 ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_1_NAME}.config + +util::wait_file_exist ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_2_NAME}.config 300 kubectl wait --for=condition=Ready nodes --all --timeout=800s --kubeconfig=${KUBECONFIG_PATH}/${MEMBER_CLUSTER_2_NAME}.config +util::wait_nodes_taint_disappear 800 ${KUBECONFIG_PATH}/${MEMBER_CLUSTER_2_NAME}.config # init Karmada control plane echo "Start init karmada control plane..." diff --git a/hack/util.sh b/hack/util.sh index 393e9fb77..3fc0b4bd6 100755 --- a/hack/util.sh +++ b/hack/util.sh @@ -693,3 +693,25 @@ RUN echo -e http://mirrors.ustc.edu.cn/alpine/v3.17/main/ > /etc/apk/repositorie done } +# util::wait_nodes_taint_disappear will wait for all the nodes' taint to disappear +# Parameters: +# - timeout: Timeout in seconds. +# - kubeconfig_path: The path of kubeconfig. +# Returns: +# 1 if the condition is not met before the timeout, else 0 +function util::wait_nodes_taint_disappear() { + local timeout=${1} + local kubeconfig_path=${2} + + timeout "${timeout}" bash <