mirror of https://github.com/k3s-io/k3s
Revert "Push server docker images during the release"
parent
56f72aeb45
commit
c00dfe82f8
|
@ -1427,67 +1427,3 @@ function kube::release::gcs::publish() {
|
|||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Docker Release
|
||||
|
||||
# Releases all docker images to a docker registry specified by KUBE_DOCKER_REGISTRY
|
||||
# using tag KUBE_DOCKER_IMAGE_TAG.
|
||||
#
|
||||
# Globals:
|
||||
# KUBE_DOCKER_REGISTRY
|
||||
# KUBE_DOCKER_IMAGE_TAG
|
||||
# RELEASE_DIR
|
||||
# Returns:
|
||||
# If new pushing docker images was successful.
|
||||
function kube::release::docker::release() {
|
||||
SERVER_BINARY_TAR="${RELEASE_DIR}/kubernetes-server-linux-amd64.tar.gz"
|
||||
kube::release::docker::release_server_images
|
||||
}
|
||||
|
||||
# Releases kubernetes server docker images to a docker registry specified by
|
||||
# KUBE_DOCKER_REGISTRY using tag KUBE_DOCKER_IMAGE_TAG.
|
||||
#
|
||||
# Globals:
|
||||
# KUBE_DOCKER_REGISTRY
|
||||
# KUBE_DOCKER_IMAGE_TAG
|
||||
# SERVER_BINARY_TAR
|
||||
# Returns:
|
||||
# If new pushing docker images was successful.
|
||||
function kube::release::docker::release_server_images() {
|
||||
local docker_wrapped_binaries=(
|
||||
"kube-apiserver"
|
||||
"kube-controller-manager"
|
||||
"kube-scheduler"
|
||||
"kube-proxy"
|
||||
)
|
||||
|
||||
local docker_cmd=("docker")
|
||||
local docker_push_cmd=$docker_cmd
|
||||
if [[ "${KUBE_DOCKER_REGISTRY}" == "gcr.io/"* ]]; then
|
||||
docker_push_cmd=("gcloud" "docker")
|
||||
fi
|
||||
|
||||
local temp_dir="$(mktemp -d -t 'kube-server-XXXX')"
|
||||
|
||||
tar xzfv "${SERVER_BINARY_TAR}" -C "${temp_dir}" &> /dev/null
|
||||
|
||||
for binary in "${docker_wrapped_binaries[@]}"; do
|
||||
local docker_tag="$(cat ${temp_dir}/kubernetes/server/bin/${binary}.docker_tag)"
|
||||
local docker_target="${KUBE_DOCKER_REGISTRY}/${binary}:${KUBE_DOCKER_IMAGE_TAG}"
|
||||
kube::log::status "Pushing ${binary} to ${docker_target}"
|
||||
(
|
||||
"${docker_cmd[@]}" load -i "${temp_dir}/kubernetes/server/bin/${binary}.tar"
|
||||
"${docker_cmd[@]}" tag -f "gcr.io/google_containers/${binary}:${docker_tag}" "${docker_target}"
|
||||
"${docker_push_cmd[@]}" push "${docker_target}"
|
||||
) &> "${temp_dir}/${binary}-push.log" &
|
||||
done
|
||||
|
||||
kube::util::wait-for-jobs || {
|
||||
kube::log::error "unable to push images. see ${temp_dir}/*.log for more info."
|
||||
return 1
|
||||
}
|
||||
|
||||
rm -rf "${temp_dir}"
|
||||
return 0
|
||||
}
|
||||
|
|
|
@ -34,9 +34,6 @@ KUBE_GCS_RELEASE_BUCKET='kubernetes-release'
|
|||
KUBE_GCS_RELEASE_PREFIX="release/${KUBE_RELEASE_VERSION}"
|
||||
KUBE_GCS_PUBLISH_VERSION="${KUBE_RELEASE_VERSION}"
|
||||
|
||||
KUBE_DOCKER_REGISTRY="gcr.io/google_containers"
|
||||
KUBE_DOCKER_IMAGE_TAG="${KUBE_RELEASE_VERSION}"
|
||||
|
||||
KUBE_ROOT="$(dirname "${BASH_SOURCE}")/.."
|
||||
source "${KUBE_ROOT}/build/common.sh"
|
||||
|
||||
|
@ -47,5 +44,4 @@ fi
|
|||
|
||||
kube::release::parse_and_validate_release_version "${KUBE_RELEASE_VERSION}"
|
||||
kube::release::gcs::release
|
||||
kube::release::docker::release
|
||||
kube::release::gcs::publish_official 'latest'
|
||||
|
|
|
@ -26,7 +26,6 @@ DEFAULT_KUBECONFIG="${HOME}/.kube/config"
|
|||
|
||||
source "${KUBE_ROOT}/hack/lib/util.sh"
|
||||
source "${KUBE_ROOT}/hack/lib/logging.sh"
|
||||
source "${KUBE_ROOT}/build/common.sh"
|
||||
# KUBE_RELEASE_VERSION_REGEX matches things like "v1.2.3" or "v1.2.3-alpha.4"
|
||||
#
|
||||
# NOTE This must match the version_regex in build/common.sh
|
||||
|
@ -377,6 +376,37 @@ function stage-images() {
|
|||
|
||||
KUBE_IMAGE_TAG="$(echo """${KUBE_GIT_VERSION}""" | sed 's/+/-/g')"
|
||||
|
||||
# We are using the same mechanism as during a regular release.
|
||||
kube::release::docker::release_server_images
|
||||
local docker_wrapped_binaries=(
|
||||
"kube-apiserver"
|
||||
"kube-controller-manager"
|
||||
"kube-scheduler"
|
||||
"kube-proxy"
|
||||
)
|
||||
|
||||
local docker_cmd=("docker")
|
||||
|
||||
if [[ "${KUBE_DOCKER_REGISTRY}" == "gcr.io/"* ]]; then
|
||||
local docker_push_cmd=("gcloud" "docker")
|
||||
fi
|
||||
|
||||
local temp_dir="$(mktemp -d -t 'kube-server-XXXX')"
|
||||
|
||||
tar xzfv "${SERVER_BINARY_TAR}" -C "${temp_dir}" &> /dev/null
|
||||
|
||||
for binary in "${docker_wrapped_binaries[@]}"; do
|
||||
local docker_tag="$(cat ${temp_dir}/kubernetes/server/bin/${binary}.docker_tag)"
|
||||
(
|
||||
"${docker_cmd[@]}" load -i "${temp_dir}/kubernetes/server/bin/${binary}.tar"
|
||||
"${docker_cmd[@]}" tag -f "gcr.io/google_containers/${binary}:${docker_tag}" "${KUBE_DOCKER_REGISTRY}/${binary}:${KUBE_IMAGE_TAG}"
|
||||
"${docker_push_cmd[@]}" push "${KUBE_DOCKER_REGISTRY}/${binary}:${KUBE_IMAGE_TAG}"
|
||||
) &> "${temp_dir}/${binary}-push.log" &
|
||||
done
|
||||
|
||||
kube::util::wait-for-jobs || {
|
||||
kube::log::error "unable to push images. see ${temp_dir}/*.log for more info."
|
||||
return 1
|
||||
}
|
||||
|
||||
rm -rf "${temp_dir}"
|
||||
return 0
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue