Merge pull request #28575 from fejta/check-resources

Automatic merge from submit-queue

Move kubemark, skew, upgrade, leak logic into hack/e2e.go

And move out of the `e2e_runner.sh`
Also make `start-kubemark.sh` automatically find `kubernetes-server-linux-amd64.tar.gz` instead of depending on a `RUN_FROM_DISTRO` env var

@gmarek can you review the kubemark-related changes?
@zmerlynn are you the right person to review upgrade changes?

@spxtr take a look at the overall `e2e.go` changes.

This is for https://github.com/kubernetes/kubernetes/issues/21843 and https://github.com/kubernetes/test-infra/pull/250

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/28575)
<!-- Reviewable:end -->
This commit is contained in:
Kubernetes Submit Queue
2016-08-09 15:54:50 -07:00
committed by GitHub
5 changed files with 399 additions and 306 deletions

View File

@@ -42,17 +42,23 @@ EOF
sed -i'' -e "s/\"//g" "${RESOURCE_DIRECTORY}/controllers_flags"
}
RUN_FROM_DISTRO=${RUN_FROM_DISTRO:-false}
MAKE_DIR="${KUBE_ROOT}/cluster/images/kubemark"
if [ "${RUN_FROM_DISTRO}" == "false" ]; then
# Running from repository
echo "Copying kubemark to ${MAKE_DIR}"
if [[ -f "${KUBE_ROOT}/_output/release-tars/kubernetes-server-linux-amd64.tar.gz" ]]; then
# Running from distro
SERVER_TARBALL="${KUBE_ROOT}/_output/release-tars/kubernetes-server-linux-amd64.tar.gz"
cp "${KUBE_ROOT}/_output/release-stage/server/linux-amd64/kubernetes/server/bin/kubemark" "${MAKE_DIR}"
elif [[ -f "${KUBE_ROOT}/server/kubernetes-server-linux-amd64.tar.gz" ]]; then
# Running from an extracted release tarball (kubernetes.tar.gz)
SERVER_TARBALL="${KUBE_ROOT}/server/kubernetes-server-linux-amd64.tar.gz"
tar \
--strip-components=3 \
-xzf kubernetes-server-linux-amd64.tar.gz \
-C "${MAKE_DIR}" 'kubernetes/server/bin/kubemark' || exit 1
else
cp "${KUBE_ROOT}/server/kubernetes-server-linux-amd64.tar.gz" "."
tar -xzf kubernetes-server-linux-amd64.tar.gz
cp "kubernetes/server/bin/kubemark" "${MAKE_DIR}"
rm -rf "kubernetes-server-linux-amd64.tar.gz" "kubernetes"
echo 'Cannot find kubernetes/server/bin/kubemark binary'
exit 1
fi
CURR_DIR=`pwd`
@@ -167,25 +173,14 @@ gcloud compute ssh --zone="${ZONE}" --project="${PROJECT}" "${MASTER_NAME}" \
writeEnvironmentFiles
if [ "${RUN_FROM_DISTRO}" == "false" ]; then
gcloud compute copy-files --zone="${ZONE}" --project="${PROJECT}" \
"${KUBE_ROOT}/_output/release-tars/kubernetes-server-linux-amd64.tar.gz" \
"${KUBEMARK_DIRECTORY}/start-kubemark-master.sh" \
"${KUBEMARK_DIRECTORY}/configure-kubectl.sh" \
"${RESOURCE_DIRECTORY}/apiserver_flags" \
"${RESOURCE_DIRECTORY}/scheduler_flags" \
"${RESOURCE_DIRECTORY}/controllers_flags" \
"${MASTER_NAME}":~
else
gcloud compute copy-files --zone="${ZONE}" --project="${PROJECT}" \
"${KUBE_ROOT}/server/kubernetes-server-linux-amd64.tar.gz" \
"${KUBEMARK_DIRECTORY}/start-kubemark-master.sh" \
"${KUBEMARK_DIRECTORY}/configure-kubectl.sh" \
"${RESOURCE_DIRECTORY}/apiserver_flags" \
"${RESOURCE_DIRECTORY}/scheduler_flags" \
"${RESOURCE_DIRECTORY}/controllers_flags" \
"${MASTER_NAME}":~
fi
gcloud compute copy-files --zone="${ZONE}" --project="${PROJECT}" \
"${SERVER_TARBALL}" \
"${KUBEMARK_DIRECTORY}/start-kubemark-master.sh" \
"${KUBEMARK_DIRECTORY}/configure-kubectl.sh" \
"${RESOURCE_DIRECTORY}/apiserver_flags" \
"${RESOURCE_DIRECTORY}/scheduler_flags" \
"${RESOURCE_DIRECTORY}/controllers_flags" \
"${MASTER_NAME}":~
gcloud compute ssh "${MASTER_NAME}" --zone="${ZONE}" --project="${PROJECT}" \
--command="chmod a+x configure-kubectl.sh && chmod a+x start-kubemark-master.sh && sudo ./start-kubemark-master.sh ${EVENT_STORE_IP:-127.0.0.1} ${NUM_NODES:-0}"