From 8316bbf342c394400949dfe8fc7b80668ecb2313 Mon Sep 17 00:00:00 2001 From: RainbowMango Date: Wed, 16 Dec 2020 10:58:30 +0800 Subject: [PATCH] Add bootstrap script for building test environments --- hack/karmada-bootstrap.sh | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100755 hack/karmada-bootstrap.sh diff --git a/hack/karmada-bootstrap.sh b/hack/karmada-bootstrap.sh new file mode 100755 index 000000000..f74e3a7ac --- /dev/null +++ b/hack/karmada-bootstrap.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +set -o errexit +set -o nounset +set -o pipefail + +# This script starts a local karmada control plane based on current codebase and with a certain number of clusters joined. +# This script intended used in following scenarios: +# 1. used by developer to setup develop environment quickly. +# 2. used by e2e testing to setup test environment automatically. + +KUBECONFIG_PATH=${KUBECONFIG_PATH:-"${HOME}/.kube"} + +REPO_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. + +export KUBECONFIG_PATH="${KUBECONFIG_PATH}" +"${REPO_ROOT}"/hack/local-up-karmada.sh +export KUBECONFIG="${KUBECONFIG_PATH}/karmada.config" + +# Install karmadactl +GO111MODULE=on go install "github.com/karmada-io/karmada/cmd/karmadactl" + +# create clusters and join +MEMBER_CLUSTER_1_KUBECONFIG="${KUBECONFIG_PATH}/member1.config" +"${REPO_ROOT}"/hack/create-cluster.sh member1 "${MEMBER_CLUSTER_1_KUBECONFIG}" +karmadactl join member1 --member-cluster-kubeconfig="${MEMBER_CLUSTER_1_KUBECONFIG}" +MEMBER_CLUSTER_2_KUBECONFIG="${KUBECONFIG_PATH}/member2.config" +"${REPO_ROOT}"/hack/create-cluster.sh member2 "${MEMBER_CLUSTER_2_KUBECONFIG}" +karmadactl join member2 --member-cluster-kubeconfig="${MEMBER_CLUSTER_2_KUBECONFIG}"