Merge pull request #74889 from akutz/feature/get-kube-binaries-client-choice

Allow choice of os/arch when downloading client
This commit is contained in:
Kubernetes Prow Robot
2019-03-21 22:50:57 -07:00
committed by GitHub

View File

@@ -29,6 +29,21 @@
# * ppc64le # * ppc64le
# * s390x # * s390x
# #
# Set KUBERNETES_CLIENT_OS to choose the client OS to download:
# * current OS [default]
# * linux
# * darwin
# * windows
#
# Set KUBERNETES_CLIENT_ARCH to choose the client architecture to download:
# * current architecture [default]
# * amd64
# * arm
# * arm64
# * ppc64le
# * s390x
# * windows
#
# Set KUBERNETES_SKIP_CONFIRM to skip the installation confirmation prompt. # Set KUBERNETES_SKIP_CONFIRM to skip the installation confirmation prompt.
# Set KUBERNETES_RELEASE_URL to choose where to download binaries from. # Set KUBERNETES_RELEASE_URL to choose where to download binaries from.
# (Defaults to https://storage.googleapis.com/kubernetes-release/release). # (Defaults to https://storage.googleapis.com/kubernetes-release/release).
@@ -59,7 +74,10 @@ function detect_kube_release() {
} }
function detect_client_info() { function detect_client_info() {
local kernel machine if [ -n "${KUBERNETES_CLIENT_OS-}" ]; then
CLIENT_PLATFORM="${KUBERNETES_CLIENT_OS}"
else
local kernel
kernel="$(uname -s)" kernel="$(uname -s)"
case "${kernel}" in case "${kernel}" in
Darwin) Darwin)
@@ -74,9 +92,14 @@ function detect_client_info() {
echo "Bailing out." >&2 echo "Bailing out." >&2
exit 2 exit 2
esac esac
fi
if [ -n "${KUBERNETES_CLIENT_ARCH-}" ]; then
CLIENT_ARCH="${KUBERNETES_CLIENT_ARCH}"
else
# TODO: migrate the kube::util::host_platform function out of hack/lib and # TODO: migrate the kube::util::host_platform function out of hack/lib and
# use it here. # use it here.
local machine
machine="$(uname -m)" machine="$(uname -m)"
case "${machine}" in case "${machine}" in
x86_64*|i?86_64*|amd64*) x86_64*|i?86_64*|amd64*)
@@ -101,6 +124,7 @@ function detect_client_info() {
exit 3 exit 3
;; ;;
esac esac
fi
} }
function md5sum_file() { function md5sum_file() {
@@ -171,7 +195,11 @@ CLIENT_TAR="kubernetes-client-${CLIENT_PLATFORM}-${CLIENT_ARCH}.tar.gz"
echo "Kubernetes release: ${KUBE_VERSION}" echo "Kubernetes release: ${KUBE_VERSION}"
echo "Server: ${SERVER_PLATFORM}/${SERVER_ARCH} (to override, set KUBERNETES_SERVER_ARCH)" echo "Server: ${SERVER_PLATFORM}/${SERVER_ARCH} (to override, set KUBERNETES_SERVER_ARCH)"
echo "Client: ${CLIENT_PLATFORM}/${CLIENT_ARCH} (autodetected)" printf "Client: %s/%s" "${CLIENT_PLATFORM}" "${CLIENT_ARCH}"
if [ -z "${KUBERNETES_CLIENT_OS-}" ] && [ -z "${KUBERNETES_CLIENT_ARCH-}" ]; then
printf " (autodetected)"
fi
echo " (to override, set KUBERNETES_CLIENT_OS and/or KUBERNETES_CLIENT_ARCH)"
echo echo
echo "Will download ${SERVER_TAR} from ${DOWNLOAD_URL_PREFIX}" echo "Will download ${SERVER_TAR} from ${DOWNLOAD_URL_PREFIX}"