github.com/verrazzano/verrazzano@v1.7.1/ci/scripts/setup_kind_for_jenkins.sh (about) 1 #!/usr/bin/env bash 2 # 3 # Copyright (c) 2021, Oracle and/or its affiliates. 4 # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 5 # 6 7 JENKINS_RUNNER_CONTAINER_LABEL=${JENKINS_RUNNER_CONTAINER_LABEL:-jenkins-runner} 8 KIND_CLUSTER_NAME=${KIND_CLUSTER_NAME:-verrazzano} 9 KUBECONFIG=${KUBECONFIG:-${HOME}/.kube/config} 10 11 set -o pipefail 12 13 set -xv 14 15 kind_container_name=${KIND_CLUSTER_NAME}-control-plane 16 kind_container_ip=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ${kind_container_name}) 17 if [ $? -ne 0 ]; then 18 echo "Kind container ${KIND_CONTAINER_NAME} not running" 19 exit 1 20 fi 21 22 kind_kubeconfig_cluster_name="kind-${KIND_CLUSTER_NAME}" 23 kubectl --kubeconfig ${KUBECONFIG} config set-cluster ${kind_kubeconfig_cluster_name} --server "https://${kind_container_ip}:6443" 24 if [ $? -ne 0 ] ; then 25 echo "Unable to set server address for cluster ${kind_kubeconfig_cluster_name} in KUBECONFIG (${KUBECONFIG})" 26 exit 1 27 fi 28 29 for jenkins_runner_container in $(docker ps -q -f "label=${JENKINS_RUNNER_CONTAINER_LABEL}") ; do 30 if ! docker inspect ${jenkins_runner_container} | jq -e .[].NetworkSettings.Networks.kind ; then 31 docker network connect kind ${jenkins_runner_container} 32 if [ $? -ne 0 ] ; then 33 echo "Unable to connect container ${jenkins_runner_container} to docker network 'kind'" 34 exit 1 35 fi 36 fi 37 done 38 39 exit 0