diff --git a/build/common.sh b/build/common.sh index 3d052e3c936..7492dbed8ff 100755 --- a/build/common.sh +++ b/build/common.sh @@ -154,7 +154,7 @@ function kube::build::verify_prereqs() { fi kube::build::ensure_docker_daemon_connectivity || return 1 - KUBE_ROOT_HASH=$(kube::build::short_hash "$KUBE_ROOT") + KUBE_ROOT_HASH=$(kube::build::short_hash "${HOSTNAME:-}:${KUBE_ROOT}") KUBE_BUILD_IMAGE_TAG="build-${KUBE_ROOT_HASH}" KUBE_BUILD_IMAGE="${KUBE_BUILD_IMAGE_REPO}:${KUBE_BUILD_IMAGE_TAG}" KUBE_BUILD_CONTAINER_NAME="kube-build-${KUBE_ROOT_HASH}" diff --git a/hack/after-build/verify-generated-protobuf.sh b/hack/after-build/verify-generated-protobuf.sh index 0582c155c9c..965b8cefe04 100755 --- a/hack/after-build/verify-generated-protobuf.sh +++ b/hack/after-build/verify-generated-protobuf.sh @@ -36,10 +36,12 @@ for APIROOT in ${APIROOTS}; do cp -a "${KUBE_ROOT}/${APIROOT}" "${_tmp}/${APIROOT}" done -# We would like to use "sudo" when running on Travis and -# not use "sudo" when running on Jenkins. -SUDO="sudo" -sudo -h > /dev/null || SUDO="" +# If not running as root, we need to use sudo to restore the original generated +# protobuf files. +SUDO="" +if [[ "$(id -u)" != '0' ]]; then + SUDO="sudo" +fi "${KUBE_ROOT}/hack/update-generated-protobuf.sh" for APIROOT in ${APIROOTS}; do diff --git a/hack/update-generated-protobuf.sh b/hack/update-generated-protobuf.sh index ff6c23feb69..2ea20b2cac0 100755 --- a/hack/update-generated-protobuf.sh +++ b/hack/update-generated-protobuf.sh @@ -31,7 +31,7 @@ function prereqs() { fi kube::build::ensure_docker_daemon_connectivity || return 1 - KUBE_ROOT_HASH=$(kube::build::short_hash "$KUBE_ROOT/go-to-protobuf") + KUBE_ROOT_HASH=$(kube::build::short_hash "${HOSTNAME:-}:${REPO_DIR:-${KUBE_ROOT}}/go-to-protobuf") KUBE_BUILD_IMAGE_TAG="build-${KUBE_ROOT_HASH}" KUBE_BUILD_IMAGE="${KUBE_BUILD_IMAGE_REPO}:${KUBE_BUILD_IMAGE_TAG}" KUBE_BUILD_CONTAINER_NAME="kube-build-${KUBE_ROOT_HASH}"