From f719624654c68d143cad4e4af2f21cca0bfde8fd Mon Sep 17 00:00:00 2001 From: Davanum Srinivas Date: Fri, 22 Jan 2021 21:25:50 +0000 Subject: [PATCH] Support M1 MacBooks darwin/arm64 on the client-side testing using: ``` build/run.sh make generated_files && make quick-release-images ``` Signed-off-by: Davanum Srinivas --- hack/lib/golang.sh | 23 +++++++++++++++-------- test/typecheck/main.go | 8 ++++---- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh index a38ed9936e5..ee326f18cb9 100755 --- a/hack/lib/golang.sh +++ b/hack/lib/golang.sh @@ -49,6 +49,7 @@ readonly KUBE_SUPPORTED_CLIENT_PLATFORMS=( linux/s390x linux/ppc64le darwin/amd64 + darwin/arm64 windows/amd64 windows/386 ) @@ -62,6 +63,7 @@ readonly KUBE_SUPPORTED_TEST_PLATFORMS=( linux/s390x linux/ppc64le darwin/amd64 + darwin/arm64 windows/amd64 ) @@ -206,25 +208,30 @@ kube::golang::setup_platforms() { readonly KUBE_CLIENT_PLATFORMS elif [[ "${KUBE_FASTBUILD:-}" == "true" ]]; then - KUBE_SERVER_PLATFORMS=(linux/amd64) + host_arch=$(kube::util::host_arch) + if [[ "${host_arch}" != "amd64" && "${host_arch}" != "arm64" ]]; then + # on any platform other than amd64 and arm64, we just default to amd64 + host_arch="amd64" + fi + KUBE_SERVER_PLATFORMS=("linux/${host_arch}") readonly KUBE_SERVER_PLATFORMS - KUBE_NODE_PLATFORMS=(linux/amd64) + KUBE_NODE_PLATFORMS=("linux/${host_arch}") readonly KUBE_NODE_PLATFORMS if [[ "${KUBE_BUILDER_OS:-}" == "darwin"* ]]; then KUBE_TEST_PLATFORMS=( - darwin/amd64 - linux/amd64 + "darwin/${host_arch}" + "linux/${host_arch}" ) readonly KUBE_TEST_PLATFORMS KUBE_CLIENT_PLATFORMS=( - darwin/amd64 - linux/amd64 + "darwin/${host_arch}" + "linux/${host_arch}" ) readonly KUBE_CLIENT_PLATFORMS else - KUBE_TEST_PLATFORMS=(linux/amd64) + KUBE_TEST_PLATFORMS=("linux/${host_arch}") readonly KUBE_TEST_PLATFORMS - KUBE_CLIENT_PLATFORMS=(linux/amd64) + KUBE_CLIENT_PLATFORMS=("linux/${host_arch}") readonly KUBE_CLIENT_PLATFORMS fi else diff --git a/test/typecheck/main.go b/test/typecheck/main.go index ffe5085b0d5..bd02895b747 100644 --- a/test/typecheck/main.go +++ b/test/typecheck/main.go @@ -48,10 +48,10 @@ var ( // interesting OS-based errors happen earlier. crossPlatforms = []string{ "linux/amd64", "windows/386", - "darwin/amd64", "linux/arm", - "linux/386", "windows/amd64", - "linux/arm64", "linux/ppc64le", - "linux/s390x", + "darwin/amd64", "darwin/arm64", + "linux/arm", "linux/386", + "windows/amd64", "linux/arm64", + "linux/ppc64le", "linux/s390x", } // directories we always ignore