mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-13 21:25:09 +00:00
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:
@@ -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}"
|
||||||
|
Reference in New Issue
Block a user