e2e-runner: Get GCI builtin k8s version from GCS

Instead of parsing unstructured image description.
This commit is contained in:
Daniel Wang 2016-08-18 10:19:27 -07:00
parent 9d2a5fe5e8
commit e4952581b9

View File

@ -173,17 +173,13 @@ function install_google_cloud_sdk_tarball() {
} }
# Figures out the builtin k8s version of a GCI image. # Figures out the builtin k8s version of a GCI image.
# Assumes: JENKINS_GCI_IMAGE_FAMILY and KUBE_GCE_MASTER_IMAGE
function get_gci_k8s_version() { function get_gci_k8s_version() {
local -r image_description=$(gcloud compute images describe ${KUBE_GCE_MASTER_IMAGE} --project=${KUBE_GCE_MASTER_PROJECT}) if [[ -z "${JENKINS_GCI_IMAGE_FAMILY:-}" ]] || [[ -z "${KUBE_GCE_MASTER_IMAGE:-}" ]]; then
# Staged GCI images all include versions in their image descriptions so we echo "JENKINS_GCI_IMAGE_FAMILY and KUBE_GCE_MASTER_IMAGE must be set."
# extract builtin Kubernetes version from them.
local -r k8s_version_re='.*Kubernetes: ([0-9a-z.-]+),.*'
if [[ ${image_description} =~ ${k8s_version_re} ]]; then
local -r gci_k8s_version="v${BASH_REMATCH[1]}"
else
echo "Failed to determine builtin k8s version for image ${image_name}: ${image_description}"
exit 1 exit 1
fi fi
local -r gci_k8s_version="v$(gsutil cat gs://container-vm-image-staging/k8s-version-map/${KUBE_GCE_MASTER_IMAGE})"
echo "${gci_k8s_version}" echo "${gci_k8s_version}"
} }