From afab6189bea83d904640999b524e4b0e82327dda Mon Sep 17 00:00:00 2001 From: peter-funktionIT Date: Tue, 27 Nov 2018 11:36:22 +0100 Subject: [PATCH 1/2] Update kubectl More feature complete even when unable to reach server --- kubectl | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/kubectl b/kubectl index 2f7d9c4..1748c56 100644 --- a/kubectl +++ b/kubectl @@ -19,18 +19,19 @@ if [ ! -f "$DEFAULT_CLIENT" ]; then downloadClient "$DEFAULT_VERSION" fi -if [ "$1" == "config" ]; then - $DEFAULT_CLIENT "$@" - exit $? +VERSION_OUTPUT=$($DEFAULT_CLIENT version -o json 2>&1) +if grep -q "Unable to connect to the server" <<<"$VERSION_OUTPUT"; then + # Echo as comment to make sure "kubectl completion" etc works in profile + echo -e "#WARNING: Wrapper unable to verify server version, using default version $DEFAULT_VERSION.\n" + $DEFAULT_CLIENT "$@" +else + $SERVER_VERSION=$(echo $VERSION_OUTPUT | jq ".serverVersion.gitVersion" -r | grep -Po "v\d+.\d+.\d+") + CLIENT="$CLIENTS_PATH/$SERVER_VERSION" + #Download client if we dont have it + if [ ! -f "$CLIENT" ]; then + downloadClient "$SERVER_VERSION" + fi + $CLIENT "$@" fi -SERVER_VERSION=$($DEFAULT_CLIENT version -o json | jq ".serverVersion.gitVersion" -r | grep -Po "v\d+.\d+.\d+") -CLIENT="$CLIENTS_PATH/$SERVER_VERSION" - -#Download client if we dont have it -if [ ! -f "$CLIENT" ]; then - downloadClient "$SERVER_VERSION" -fi - -$CLIENT "$@" exit $? From b461ae4c5930406a823ab9675c9837bcfef7f47a Mon Sep 17 00:00:00 2001 From: peter-funktionIT Date: Tue, 27 Nov 2018 12:57:05 +0100 Subject: [PATCH 2/2] Update kubectl Stupid error --- kubectl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kubectl b/kubectl index 1748c56..db93075 100644 --- a/kubectl +++ b/kubectl @@ -25,7 +25,7 @@ if grep -q "Unable to connect to the server" <<<"$VERSION_OUTPUT"; then echo -e "#WARNING: Wrapper unable to verify server version, using default version $DEFAULT_VERSION.\n" $DEFAULT_CLIENT "$@" else - $SERVER_VERSION=$(echo $VERSION_OUTPUT | jq ".serverVersion.gitVersion" -r | grep -Po "v\d+.\d+.\d+") + SERVER_VERSION=$(echo $VERSION_OUTPUT | jq ".serverVersion.gitVersion" -r | grep -Po "v\d+.\d+.\d+") CLIENT="$CLIENTS_PATH/$SERVER_VERSION" #Download client if we dont have it if [ ! -f "$CLIENT" ]; then