From de9ca2d1661d391f3b7a3946ff5936d5771508f1 Mon Sep 17 00:00:00 2001 From: chaunceyjiang Date: Thu, 12 May 2022 18:46:06 +0800 Subject: [PATCH] compatible with mac os Signed-off-by: chaunceyjiang --- hack/build.sh | 2 +- hack/util.sh | 32 +++++++++++++++++++++----------- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/hack/build.sh b/hack/build.sh index 06efd3307..e10f9aa18 100755 --- a/hack/build.sh +++ b/hack/build.sh @@ -43,7 +43,7 @@ function build_binary_for_platform() { local -r os=${platform%/*} local -r arch=${platform##*/} - local gopkg="${KARMADA_GO_PACKAGE}/${KARMADA_TARGET_SOURCE[$target]}" + local gopkg="${KARMADA_GO_PACKAGE}/$(util::get_target_source $target)" set -x CGO_ENABLED=0 GOOS=${os} GOARCH=${arch} go build \ -ldflags "${LDFLAGS:-}" \ diff --git a/hack/util.sh b/hack/util.sh index 81ff3d660..b44d987f2 100755 --- a/hack/util.sh +++ b/hack/util.sh @@ -21,17 +21,17 @@ KARMADA_GO_PACKAGE="github.com/karmada-io/karmada" MIN_Go_VERSION=go1.17.0 -declare -A KARMADA_TARGET_SOURCE=( - [karmada-aggregated-apiserver]=cmd/aggregated-apiserver - [karmada-controller-manager]=cmd/controller-manager - [karmada-scheduler]=cmd/scheduler - [karmada-descheduler]=cmd/descheduler - [karmadactl]=cmd/karmadactl - [kubectl-karmada]=cmd/kubectl-karmada - [karmada-webhook]=cmd/webhook - [karmada-agent]=cmd/agent - [karmada-scheduler-estimator]=cmd/scheduler-estimator - [karmada-interpreter-webhook-example]=examples/customresourceinterpreter/webhook +KARMADA_TARGET_SOURCE=( + karmada-aggregated-apiserver=cmd/aggregated-apiserver + karmada-controller-manager=cmd/controller-manager + karmada-scheduler=cmd/scheduler + karmada-descheduler=cmd/descheduler + karmadactl=cmd/karmadactl + kubectl-karmada=cmd/kubectl-karmada + karmada-webhook=cmd/webhook + karmada-agent=cmd/agent + karmada-scheduler-estimator=cmd/scheduler-estimator + karmada-interpreter-webhook-example=examples/customresourceinterpreter/webhook ) #https://textkool.com/en/ascii-art-generator?hl=default&vl=default&font=DOS%20Rebel&text=KARMADA @@ -48,6 +48,16 @@ KARMADA_GREETING=' ------------------------------------------------------------------------------------------------------ ' +function util::get_target_source() { + local target=$1 + for s in "${KARMADA_TARGET_SOURCE[@]}"; do + if [[ "$s" == ${target}=* ]]; then + echo "${s##${target}=}" + return + fi + done +} + # This function installs a Go tools by 'go install' command. # Parameters: # - $1: package name, such as "sigs.k8s.io/controller-tools/cmd/controller-gen"