mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-04 18:00:08 +00:00
Merge pull request #115043 from bobbypage/image-family
cluster/gce: Fetch image from image family
This commit is contained in:
commit
f82a6ac72d
@ -86,10 +86,16 @@ fi
|
|||||||
# you are updating the os image versions, update this variable.
|
# you are updating the os image versions, update this variable.
|
||||||
# Also please update corresponding image for node e2e at:
|
# Also please update corresponding image for node e2e at:
|
||||||
# https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml
|
# https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml
|
||||||
GCI_VERSION=${KUBE_GCI_VERSION:-cos-97-16919-103-16}
|
#
|
||||||
|
# By default, the latest image from the image family will be used unless an
|
||||||
|
# explicit image will be set.
|
||||||
|
GCI_VERSION=${KUBE_GCI_VERSION:-}
|
||||||
|
IMAGE_FAMILY=${KUBE_IMAGE_FAMILY:-cos-97-lts}
|
||||||
export MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-}
|
export MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-}
|
||||||
|
export MASTER_IMAGE_FAMILY=${KUBE_GCE_MASTER_IMAGE_FAMILY:-${IMAGE_FAMILY}}
|
||||||
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud}
|
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud}
|
||||||
export NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
|
export NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
|
||||||
|
export NODE_IMAGE_FAMILY=${KUBE_GCE_NODE_IMAGE_FAMILY:-${IMAGE_FAMILY}}
|
||||||
export NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud}
|
export NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud}
|
||||||
export NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default}
|
export NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default}
|
||||||
|
|
||||||
|
@ -99,10 +99,16 @@ ALLOWED_NOTREADY_NODES=${ALLOWED_NOTREADY_NODES:-$(($(get-num-nodes) / 100))}
|
|||||||
# you are updating the os image versions, update this variable.
|
# you are updating the os image versions, update this variable.
|
||||||
# Also please update corresponding image for node e2e at:
|
# Also please update corresponding image for node e2e at:
|
||||||
# https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml
|
# https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config.yaml
|
||||||
GCI_VERSION=${KUBE_GCI_VERSION:-cos-97-16919-103-16}
|
#
|
||||||
|
# By default, the latest image from the image family will be used unless an
|
||||||
|
# explicit image will be set.
|
||||||
|
GCI_VERSION=${KUBE_GCI_VERSION:-}
|
||||||
|
IMAGE_FAMILY=${KUBE_IMAGE_FAMILY:-cos-97-lts}
|
||||||
export MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-}
|
export MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-}
|
||||||
|
export MASTER_IMAGE_FAMILY=${KUBE_GCE_MASTER_IMAGE_FAMILY:-${IMAGE_FAMILY}}
|
||||||
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud}
|
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-cos-cloud}
|
||||||
export NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
|
export NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
|
||||||
|
export NODE_IMAGE_FAMILY=${KUBE_GCE_NODE_IMAGE_FAMILY:-${IMAGE_FAMILY}}
|
||||||
export NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud}
|
export NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-cos-cloud}
|
||||||
export NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default}
|
export NODE_SERVICE_ACCOUNT=${KUBE_GCE_NODE_SERVICE_ACCOUNT:-default}
|
||||||
|
|
||||||
|
@ -48,13 +48,20 @@ fi
|
|||||||
|
|
||||||
if [[ "${MASTER_OS_DISTRIBUTION}" == "gci" ]]; then
|
if [[ "${MASTER_OS_DISTRIBUTION}" == "gci" ]]; then
|
||||||
DEFAULT_GCI_PROJECT=google-containers
|
DEFAULT_GCI_PROJECT=google-containers
|
||||||
if [[ "${GCI_VERSION}" == "cos"* ]]; then
|
if [[ "${GCI_VERSION}" == "cos"* ]] || [[ "${MASTER_IMAGE_FAMILY}" == "cos"* ]]; then
|
||||||
DEFAULT_GCI_PROJECT=cos-cloud
|
DEFAULT_GCI_PROJECT=cos-cloud
|
||||||
fi
|
fi
|
||||||
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-${DEFAULT_GCI_PROJECT}}
|
export MASTER_IMAGE_PROJECT=${KUBE_GCE_MASTER_PROJECT:-${DEFAULT_GCI_PROJECT}}
|
||||||
# If the master image is not set, we use the latest GCI image.
|
|
||||||
# Otherwise, we respect whatever is set by the user.
|
# If the master image is not set, we use the latest image based on image
|
||||||
export MASTER_IMAGE=${KUBE_GCE_MASTER_IMAGE:-${GCI_VERSION}}
|
# family.
|
||||||
|
kube_master_image="${KUBE_GCE_MASTER_IMAGE:-${GCI_VERSION}}"
|
||||||
|
if [[ -z "${kube_master_image}" ]]; then
|
||||||
|
kube_master_image=$(gcloud compute images list --project="${MASTER_IMAGE_PROJECT}" --no-standard-images --filter="family:${MASTER_IMAGE_FAMILY}" --format 'value(name)')
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Using image: ${kube_master_image} from project: ${MASTER_IMAGE_PROJECT} as master image" >&2
|
||||||
|
export MASTER_IMAGE="${kube_master_image}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Sets node image based on the specified os distro. Currently this function only
|
# Sets node image based on the specified os distro. Currently this function only
|
||||||
@ -69,14 +76,23 @@ fi
|
|||||||
function set-linux-node-image() {
|
function set-linux-node-image() {
|
||||||
if [[ "${NODE_OS_DISTRIBUTION}" == "gci" ]]; then
|
if [[ "${NODE_OS_DISTRIBUTION}" == "gci" ]]; then
|
||||||
DEFAULT_GCI_PROJECT=google-containers
|
DEFAULT_GCI_PROJECT=google-containers
|
||||||
if [[ "${GCI_VERSION}" == "cos"* ]]; then
|
if [[ "${GCI_VERSION}" == "cos"* ]] || [[ "${NODE_IMAGE_FAMILY}" == "cos"* ]]; then
|
||||||
DEFAULT_GCI_PROJECT=cos-cloud
|
DEFAULT_GCI_PROJECT=cos-cloud
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# If the node image is not set, we use the latest GCI image.
|
# If the node image is not set, we use the latest image based on image
|
||||||
|
# family.
|
||||||
# Otherwise, we respect whatever is set by the user.
|
# Otherwise, we respect whatever is set by the user.
|
||||||
NODE_IMAGE=${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}
|
|
||||||
NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-${DEFAULT_GCI_PROJECT}}
|
NODE_IMAGE_PROJECT=${KUBE_GCE_NODE_PROJECT:-${DEFAULT_GCI_PROJECT}}
|
||||||
|
local kube_node_image
|
||||||
|
|
||||||
|
kube_node_image="${KUBE_GCE_NODE_IMAGE:-${GCI_VERSION}}"
|
||||||
|
if [[ -z "${kube_node_image}" ]]; then
|
||||||
|
kube_node_image=$(gcloud compute images list --project="${NODE_IMAGE_PROJECT}" --no-standard-images --filter="family:${NODE_IMAGE_FAMILY}" --format 'value(name)')
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Using image: ${kube_node_image} from project: ${NODE_IMAGE_PROJECT} as node image" >&2
|
||||||
|
export NODE_IMAGE="${kube_node_image}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user