Merge pull request #3146 from zmerlynn/limit_liveness_gke
GKE: Limit liveness.sh to server version >0.7.2
This commit is contained in:
commit
943ed6d289
@ -30,3 +30,23 @@ if [[ -z "${color_start-}" ]]; then
|
||||
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*//'
|
||||
}
|
||||
|
@ -25,10 +25,20 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../..
|
||||
source "${KUBE_ROOT}/cluster/kube-env.sh"
|
||||
source "${KUBE_ROOT}/cluster/$KUBERNETES_PROVIDER/util.sh"
|
||||
|
||||
liveness_tests="http exec"
|
||||
if [[ ${KUBERNETES_PROVIDER} == "gke" ]]; then
|
||||
server_version=$(kube_server_version)
|
||||
if [[ ${server_version} -le 702 ]]; then
|
||||
echo "GKE server version <= 0.7.2, limiting test to http (version = ${server_version})"
|
||||
liveness_tests="http"
|
||||
fi
|
||||
fi
|
||||
|
||||
function teardown() {
|
||||
echo "Cleaning up test artifacts"
|
||||
${KUBECFG} delete pods/liveness-http
|
||||
${KUBECFG} delete pods/liveness-exec
|
||||
for test in ${liveness_tests}; do
|
||||
${KUBECFG} delete pods/liveness-${test}
|
||||
done
|
||||
}
|
||||
|
||||
function waitForNotPending() {
|
||||
@ -58,7 +68,7 @@ function waitForNotPending() {
|
||||
|
||||
trap "teardown" EXIT
|
||||
|
||||
for test in http exec; do
|
||||
for test in ${liveness_tests}; do
|
||||
echo "Liveness test: ${test}"
|
||||
${KUBECFG} -c ${KUBE_ROOT}/examples/liveness/${test}-liveness.yaml create pods
|
||||
waitForNotPending
|
||||
|
Loading…
Reference in New Issue
Block a user