diff --git a/hack/deploy-scheduler-estimator.sh b/hack/deploy-scheduler-estimator.sh index 327e143e6..3987e5e5f 100755 --- a/hack/deploy-scheduler-estimator.sh +++ b/hack/deploy-scheduler-estimator.sh @@ -49,11 +49,23 @@ then fi MEMBER_CLUSTER_NAME=$4 +TEMP_PATH="$(mktemp -d)" +MEMBER_CLUSTER_KUBECONFIG_NAME="$(basename "${MEMBER_CLUSTER_KUBECONFIG}")" +# --context & --minify will generate minified kubeconfig file with required context +# --flatten will embed certificate +kubectl config view --kubeconfig "${MEMBER_CLUSTER_KUBECONFIG}" \ + --context "${MEMBER_CLUSTER_NAME}" --minify --flatten \ + > "${TEMP_PATH}/${MEMBER_CLUSTER_KUBECONFIG_NAME}" + # check whether the kubeconfig secret has been created before if ! kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER_NAME}" get secrets -n karmada-system | grep "${MEMBER_CLUSTER_NAME}-kubeconfig"; then # create secret - kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER_NAME}" create secret generic ${MEMBER_CLUSTER_NAME}-kubeconfig --from-file=${MEMBER_CLUSTER_NAME}-kubeconfig="${MEMBER_CLUSTER_KUBECONFIG}" -n "karmada-system" + kubectl --kubeconfig="${HOST_CLUSTER_KUBECONFIG}" --context="${HOST_CLUSTER_NAME}" \ + create secret generic "${MEMBER_CLUSTER_NAME}-kubeconfig" \ + "--from-file=${MEMBER_CLUSTER_NAME}-kubeconfig=${TEMP_PATH}/${MEMBER_CLUSTER_KUBECONFIG_NAME}" \ + -n "karmada-system" fi +rm -rf "${TEMP_PATH}" # deploy scheduler estimator TEMP_PATH=$(mktemp -d)