mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
parent
22a241aa57
commit
4b94829cf2
@ -95,6 +95,10 @@ readonly RELEASE_DIR="${LOCAL_OUTPUT_ROOT}/release-tars"
|
||||
# Verify that the right utilities and such are installed for building Kube. Set
|
||||
# up some dynamic constants.
|
||||
#
|
||||
# Args:
|
||||
# $1 The type of operation to verify for. Only 'clean' is supported in which
|
||||
# case we don't verify docker.
|
||||
#
|
||||
# Vars set:
|
||||
# KUBE_ROOT_HASH
|
||||
# KUBE_BUILD_IMAGE_TAG
|
||||
@ -104,6 +108,8 @@ readonly RELEASE_DIR="${LOCAL_OUTPUT_ROOT}/release-tars"
|
||||
# DOCKER_MOUNT_ARGS
|
||||
function kube::build::verify_prereqs() {
|
||||
echo "+++ Verifying Prerequisites...."
|
||||
|
||||
if [[ "${1-}" != "clean" ]]; then
|
||||
if [[ -z "$(which docker)" ]]; then
|
||||
echo "Can't find 'docker' in PATH, please fix and retry." >&2
|
||||
echo "See https://docs.docker.com/installation/#installation for installation instructions." >&2
|
||||
@ -143,6 +149,7 @@ function kube::build::verify_prereqs() {
|
||||
} >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
KUBE_ROOT_HASH=$(kube::build::short_hash "$KUBE_ROOT")
|
||||
KUBE_BUILD_IMAGE_TAG="build-${KUBE_ROOT_HASH}"
|
||||
@ -161,6 +168,7 @@ function kube::build::is_osx() {
|
||||
|
||||
function kube::build::clean_output() {
|
||||
# Clean out the output directory if it exists.
|
||||
if kube::build::has_docker ; then
|
||||
if kube::build::build_image_built ; then
|
||||
echo "+++ Cleaning out _output/dockerized/bin/ via docker build image"
|
||||
kube::build::run_build_command bash -c "rm -rf '${REMOTE_OUTPUT_BINPATH}'/*"
|
||||
@ -170,6 +178,7 @@ function kube::build::clean_output() {
|
||||
|
||||
echo "+++ Removing data container"
|
||||
"${DOCKER[@]}" rm -v "${KUBE_BUILD_DATA_CONTAINER_NAME}" >/dev/null 2>&1 || true
|
||||
fi
|
||||
|
||||
echo "+++ Cleaning out local _output directory"
|
||||
rm -rf "${LOCAL_OUTPUT_ROOT}"
|
||||
@ -197,6 +206,10 @@ function kube::build::prepare_output() {
|
||||
|
||||
}
|
||||
|
||||
function kube::build::has_docker() {
|
||||
which docker &> /dev/null
|
||||
}
|
||||
|
||||
# Detect if a specific image exists
|
||||
#
|
||||
# $1 - image repo name
|
||||
@ -337,6 +350,8 @@ function kube::build::clean_image() {
|
||||
}
|
||||
|
||||
function kube::build::clean_images() {
|
||||
kube::build::has_docker || return 0
|
||||
|
||||
kube::build::clean_image "${KUBE_BUILD_IMAGE}"
|
||||
|
||||
echo "+++ Cleaning all other untagged docker images"
|
||||
|
@ -22,6 +22,6 @@ set -o pipefail
|
||||
KUBE_ROOT=$(dirname "${BASH_SOURCE}")/..
|
||||
source "$KUBE_ROOT/build/common.sh"
|
||||
|
||||
kube::build::verify_prereqs
|
||||
kube::build::verify_prereqs clean
|
||||
kube::build::clean_output
|
||||
kube::build::clean_images
|
||||
|
Loading…
Reference in New Issue
Block a user