diff --git a/cluster/aws/util.sh b/cluster/aws/util.sh index 13639fa56fb..8a68e9d8106 100755 --- a/cluster/aws/util.sh +++ b/cluster/aws/util.sh @@ -34,6 +34,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. source "${KUBE_ROOT}/cluster/aws/${KUBE_CONFIG_FILE-"config-default.sh"}" source "${KUBE_ROOT}/cluster/common.sh" +source "${KUBE_ROOT}/cluster/lib/util.sh" ALLOCATE_NODE_CIDRS=true diff --git a/cluster/gce/upgrade.sh b/cluster/gce/upgrade.sh index 94e4c37d799..cbca534fae3 100755 --- a/cluster/gce/upgrade.sh +++ b/cluster/gce/upgrade.sh @@ -28,7 +28,6 @@ if [[ "${KUBERNETES_PROVIDER:-gce}" != "gce" ]]; then fi KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" function usage() { diff --git a/cluster/kube-down.sh b/cluster/kube-down.sh index 01adc5ebfcc..5ac53c9b950 100755 --- a/cluster/kube-down.sh +++ b/cluster/kube-down.sh @@ -26,7 +26,6 @@ if [ -f "${KUBE_ROOT}/cluster/env.sh" ]; then source "${KUBE_ROOT}/cluster/env.sh" fi -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" echo "Bringing down cluster using provider: $KUBERNETES_PROVIDER" diff --git a/cluster/kube-env.sh b/cluster/kube-env.sh deleted file mode 100755 index e20f29640c9..00000000000 --- a/cluster/kube-env.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -# Copyright 2014 The Kubernetes Authors All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Set the default provider of Kubernetes cluster to know where to load provider-specific scripts -# You can override the default provider by exporting the KUBERNETES_PROVIDER -# variable in your bashrc -# -# The valid values: 'gce', 'gke', 'aws', 'vagrant', 'vsphere', 'libvirt-coreos', 'juju' - -KUBERNETES_PROVIDER=${KUBERNETES_PROVIDER:-gce} - -# Some useful colors. -if [[ -z "${color_start-}" ]]; then - declare -r color_start="\033[" - declare -r color_red="${color_start}0;31m" - declare -r color_yellow="${color_start}0;33m" - declare -r color_green="${color_start}0;32m" - declare -r color_norm="${color_start}0m" -fi - -# Returns the server version as MMmmpp, with MM as the major -# component, mm the minor component, and pp as the patch -# revision. e.g. 0.7.1 is echoed as 701, and 1.0.11 would be -# 10011. (This makes for easy integer comparison in bash.) -function kube_server_version() { - local server_version - local major - local minor - local patch - - # This sed expression is the POSIX BRE to match strings like: - # Server Version: &version.Info{Major:"0", Minor:"7+", GitVersion:"v0.7.0-dirty", GitCommit:"ad44234f7152e9c66bc2853575445c7071335e57", GitTreeState:"dirty"} - # and capture the GitVersion portion (which has the patch level) - server_version=$(${KUBECTL} --match-server-version=false version | grep "Server Version:") - read major minor patch < <( - echo ${server_version} | \ - sed "s/.*GitVersion:\"v\([0-9]\{1,\}\)\.\([0-9]\{1,\}\)\.\([0-9]\{1,\}\).*/\1 \2 \3/") - printf "%02d%02d%02d" ${major} ${minor} ${patch} | sed 's/^0*//' -} diff --git a/cluster/kube-push.sh b/cluster/kube-push.sh index 61ce6fb87e4..6f781383805 100755 --- a/cluster/kube-push.sh +++ b/cluster/kube-push.sh @@ -29,7 +29,6 @@ if [ -f "${KUBE_ROOT}/cluster/env.sh" ]; then source "${KUBE_ROOT}/cluster/env.sh" fi -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" function usage() { diff --git a/cluster/kube-up.sh b/cluster/kube-up.sh index 194989fe259..026c24dd922 100755 --- a/cluster/kube-up.sh +++ b/cluster/kube-up.sh @@ -31,7 +31,6 @@ if [ -f "${KUBE_ROOT}/cluster/env.sh" ]; then source "${KUBE_ROOT}/cluster/env.sh" fi -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" diff --git a/cluster/kube-util.sh b/cluster/kube-util.sh index 8dd63044d5b..b3d0da5121a 100644 --- a/cluster/kube-util.sh +++ b/cluster/kube-util.sh @@ -14,9 +14,12 @@ # See the License for the specific language governing permissions and # limitations under the License. -# A library of helper functions that each provider hosting Kubernetes must implement to use cluster/kube-*.sh scripts. +# This script contains skeletons of helper functions that each provider hosting +# Kubernetes must implement to use cluster/kube-*.sh scripts. +# It sets KUBERNETES_PROVIDER to its default value (gce) if it is unset, and +# then sources cluster/${KUBERNETES_PROVIDER}/util.sh. -KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. +KUBERNETES_PROVIDER="${KUBERNETES_PROVIDER:-gce}" # Must ensure that the following ENV vars are set function detect-master { @@ -91,10 +94,8 @@ function test-teardown { echo "TODO: test-teardown" 1>&2 } -# Providers util.sh scripts should define functions that override the above default functions impls -if [ -n "${KUBERNETES_PROVIDER}" ]; then - PROVIDER_UTILS="${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" - if [ -f ${PROVIDER_UTILS} ]; then - source "${PROVIDER_UTILS}" - fi +KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. +PROVIDER_UTILS="${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +if [ -f ${PROVIDER_UTILS} ]; then + source "${PROVIDER_UTILS}" fi diff --git a/cluster/kubectl.sh b/cluster/kubectl.sh index 178aefcb9bb..77ad5a13515 100755 --- a/cluster/kubectl.sh +++ b/cluster/kubectl.sh @@ -31,7 +31,6 @@ set -o pipefail KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" # Get the absolute path of the directory component of a file, i.e. the diff --git a/cluster/lib/util.sh b/cluster/lib/util.sh index decfa811600..7f700d6caf1 100644 --- a/cluster/lib/util.sh +++ b/cluster/lib/util.sh @@ -25,3 +25,11 @@ kube::util::wait-for-jobs() { return ${fail} } +# Some useful colors. +if [[ -z "${color_start-}" ]]; then + declare -r color_start="\033[" + declare -r color_red="${color_start}0;31m" + declare -r color_yellow="${color_start}0;33m" + declare -r color_green="${color_start}0;32m" + declare -r color_norm="${color_start}0m" +fi diff --git a/cluster/log-dump.sh b/cluster/log-dump.sh index 523f71fab46..0e0cb43e20b 100755 --- a/cluster/log-dump.sh +++ b/cluster/log-dump.sh @@ -24,7 +24,6 @@ set -o pipefail KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. : ${KUBE_CONFIG_FILE:="config-test.sh"} -source "${KUBE_ROOT}/cluster/kube-env.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" readonly report_dir="${1:-_artifacts}" diff --git a/cluster/rackspace/kube-up.sh b/cluster/rackspace/kube-up.sh index ec62808574a..8cb0ed7b7b8 100755 --- a/cluster/rackspace/kube-up.sh +++ b/cluster/rackspace/kube-up.sh @@ -23,8 +23,7 @@ # exit on any error set -e -source $(dirname $0)/../kube-env.sh -source $(dirname $0)/../$KUBERNETES_PROVIDER/util.sh +source $(dirname $0)/../kube-util.sh echo "Starting cluster using provider: $KUBERNETES_PROVIDER" diff --git a/cluster/test-e2e.sh b/cluster/test-e2e.sh index 073a6eb7a30..af29b291f0c 100755 --- a/cluster/test-e2e.sh +++ b/cluster/test-e2e.sh @@ -22,7 +22,7 @@ set -o nounset set -o pipefail KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" echo "Testing cluster with provider: ${KUBERNETES_PROVIDER}" 1>&2 diff --git a/cluster/validate-cluster.sh b/cluster/validate-cluster.sh index 931e41f1300..812799968bc 100755 --- a/cluster/validate-cluster.sh +++ b/cluster/validate-cluster.sh @@ -30,7 +30,7 @@ if [ -f "${KUBE_ROOT}/cluster/env.sh" ]; then source "${KUBE_ROOT}/cluster/env.sh" fi -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/lib/util.sh" source "${KUBE_ROOT}/cluster/kube-util.sh" ALLOWED_NOTREADY_NODES="${ALLOWED_NOTREADY_NODES:-0}" diff --git a/hack/e2e-internal/build-release.sh b/hack/e2e-internal/build-release.sh index 1a3d2ad49df..eb06ee2ba2e 100755 --- a/hack/e2e-internal/build-release.sh +++ b/hack/e2e-internal/build-release.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-cluster-size.sh b/hack/e2e-internal/e2e-cluster-size.sh index 1ccbdeac25e..df4da5e2038 100755 --- a/hack/e2e-internal/e2e-cluster-size.sh +++ b/hack/e2e-internal/e2e-cluster-size.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-down.sh b/hack/e2e-internal/e2e-down.sh index 5bcda502778..4857e7ecfd7 100755 --- a/hack/e2e-internal/e2e-down.sh +++ b/hack/e2e-internal/e2e-down.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-push.sh b/hack/e2e-internal/e2e-push.sh index 10433997945..e4644235cd2 100755 --- a/hack/e2e-internal/e2e-push.sh +++ b/hack/e2e-internal/e2e-push.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-status.sh b/hack/e2e-internal/e2e-status.sh index d67baad35d2..61eb6313c8f 100755 --- a/hack/e2e-internal/e2e-status.sh +++ b/hack/e2e-internal/e2e-status.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-up.sh b/hack/e2e-internal/e2e-up.sh index f60996ab47c..7a4a62fea4f 100755 --- a/hack/e2e-internal/e2e-up.sh +++ b/hack/e2e-internal/e2e-up.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/e2e-internal/e2e-upgrade.sh b/hack/e2e-internal/e2e-upgrade.sh index 2097f3e11c3..6119b3c27cb 100755 --- a/hack/e2e-internal/e2e-upgrade.sh +++ b/hack/e2e-internal/e2e-upgrade.sh @@ -25,8 +25,7 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../.. export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" -source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" prepare-e2e diff --git a/hack/ginkgo-e2e.sh b/hack/ginkgo-e2e.sh index 81dd8acaa2f..1eeedb35362 100755 --- a/hack/ginkgo-e2e.sh +++ b/hack/ginkgo-e2e.sh @@ -38,7 +38,7 @@ e2e_test=$(kube::util::find-binary "e2e.test") export KUBECTL KUBE_CONFIG_FILE -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/kube-util.sh" # ---- Do cloud-provider-specific setup if [[ -n "${KUBERNETES_CONFORMANCE_TEST:-}" ]]; then @@ -53,8 +53,6 @@ if [[ -n "${KUBERNETES_CONFORMANCE_TEST:-}" ]]; then else echo "Setting up for KUBERNETES_PROVIDER=\"${KUBERNETES_PROVIDER}\"." - source "${KUBE_ROOT}/cluster/${KUBERNETES_PROVIDER}/util.sh" - prepare-e2e detect-master >/dev/null diff --git a/hack/update-all.sh b/hack/update-all.sh index 5ad52bb63a0..3457f5c2805 100755 --- a/hack/update-all.sh +++ b/hack/update-all.sh @@ -20,7 +20,7 @@ set -o nounset set -o pipefail KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/lib/util.sh" SILENT=true ALL=false diff --git a/hack/verify-all.sh b/hack/verify-all.sh index 6017f655020..c5b32958bfa 100755 --- a/hack/verify-all.sh +++ b/hack/verify-all.sh @@ -19,7 +19,7 @@ set -o nounset set -o pipefail KUBE_ROOT=$(dirname "${BASH_SOURCE}")/.. -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/lib/util.sh" SILENT=true diff --git a/test/kubemark/common.sh b/test/kubemark/common.sh index d76044dc576..2fa6200e94f 100644 --- a/test/kubemark/common.sh +++ b/test/kubemark/common.sh @@ -16,7 +16,7 @@ source "${KUBE_ROOT}/cluster/kubemark/config-default.sh" source "${KUBE_ROOT}/cluster/kubemark/util.sh" -source "${KUBE_ROOT}/cluster/kube-env.sh" +source "${KUBE_ROOT}/cluster/lib/util.sh" detect-project &> /dev/null export PROJECT