Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make kubemark work on Jenkins #14903

Merged
merged 1 commit into from
Oct 1, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 2 additions & 3 deletions cluster/images/kubemark/Dockerfile
@@ -1,7 +1,6 @@
FROM debian:jessie

COPY kubemark.sh /kubemark.sh
COPY kubernetes-server-linux-amd64.tar.gz /tmp/kubemark.tar.gz
COPY build-kubemark.sh /build-kubemark.sh
RUN chmod a+x /kubemark.sh

RUN /build-kubemark.sh
COPY kubemark /kubemark
5 changes: 2 additions & 3 deletions cluster/images/kubemark/Makefile
@@ -1,9 +1,8 @@
# build Kubemark image from currently built binaries containing both 'real' master and Hollow Node
# build Kubemark image from currently built binaries containing both 'real' master and Hollow Node.
# This makefile assumes that the kubemark binary is present in this directory.

all:
cp ../../../_output/release-tars/kubernetes-server-linux-amd64.tar.gz .
docker build -t gcr.io/$(PROJECT)/kubemark .
gcloud docker push gcr.io/$(PROJECT)/kubemark
rm kubernetes-server-linux-amd64.tar.gz

.PHONY: all
3 changes: 1 addition & 2 deletions cluster/images/kubemark/build-kubemark.sh
Expand Up @@ -23,8 +23,7 @@ update-ca-certificates

chmod a+x /kubemark.sh

tar xzf /tmp/kubemark.tar.gz
cp kubernetes/server/bin/kubemark /
cp kubemark /

rm -rf /tmp/*
apt-get clean -y
Expand Down
1 change: 1 addition & 0 deletions hack/lib/golang.sh
Expand Up @@ -87,6 +87,7 @@ readonly KUBE_TEST_BINARIES_WIN=("${KUBE_TEST_BINARIES[@]/%/.exe}")
readonly KUBE_TEST_PORTABLE=(
test/images/network-tester/rc.json
test/images/network-tester/service.json
test/kubemark
hack/e2e.go
hack/e2e-internal
hack/ginkgo-e2e.sh
Expand Down
41 changes: 33 additions & 8 deletions test/kubemark/start-kubemark.sh
Expand Up @@ -15,6 +15,7 @@
# limitations under the License.

# Script that creates a Kubemark cluster with Master running on GCE.

KUBE_ROOT=$(dirname "${BASH_SOURCE}")/../..

source "${KUBE_ROOT}/cluster/kubemark/config-default.sh"
Expand All @@ -23,9 +24,24 @@ source "${KUBE_ROOT}/cluster/kubemark/util.sh"
detect-project &> /dev/null
export PROJECT


RUN_FROM_DISTRO=${RUN_FROM_DISTRO:-false}
MAKE_DIR="${KUBE_ROOT}/cluster/images/kubemark"

if [ "${RUN_FROM_DISTRO}" == "false" ]; then
# Running from repository
cp "${KUBE_ROOT}/_output/release-stage/server/linux-amd64/kubernetes/server/bin/kubemark" "${MAKE_DIR}"
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"
fi

CURR_DIR=`pwd`
cd ${KUBE_ROOT}/cluster/images/kubemark
cd "${MAKE_DIR}"
make
rm kubemark
cd $CURR_DIR

MASTER_NAME="hollow-cluster-master"
Expand All @@ -49,17 +65,26 @@ gcloud compute instances create ${MASTER_NAME} \

MASTER_IP=`gcloud compute instances describe hollow-cluster-master --zone=${ZONE} | grep networkIP | cut -f2 -d":" | sed "s/ //g"`

until gcloud compute ssh --zone=${ZONE} hollow-cluster-master --command="ls" &> /dev/null; do
until gcloud compute ssh --zone="${ZONE}" hollow-cluster-master --command="ls" &> /dev/null; do
sleep 1
done

gcloud compute copy-files --zone=${ZONE} \
${KUBE_ROOT}/_output/release-tars/kubernetes-server-linux-amd64.tar.gz \
${KUBE_ROOT}/test/kubemark/start-kubemark-master.sh \
${KUBE_ROOT}/test/kubemark/configure-kubectl.sh \
hollow-cluster-master:~
if [ "${RUN_FROM_DISTRO}" == "false" ]; then
gcloud compute copy-files --zone="${ZONE}" \
"${KUBE_ROOT}/_output/release-tars/kubernetes-server-linux-amd64.tar.gz" \
"${KUBE_ROOT}/test/kubemark/start-kubemark-master.sh" \
"${KUBE_ROOT}/test/kubemark/configure-kubectl.sh" \
"hollow-cluster-master":~
else
gcloud compute copy-files --zone="${ZONE}" \
"${KUBE_ROOT}/server/kubernetes-server-linux-amd64.tar.gz" \
"${KUBE_ROOT}/test/kubemark/start-kubemark-master.sh" \
"${KUBE_ROOT}/test/kubemark/configure-kubectl.sh" \
"hollow-cluster-master":~
fi

gcloud compute ssh --zone=${ZONE} hollow-cluster-master --command="chmod a+x configure-kubectl.sh && chmod a+x start-kubemark-master.sh && sudo ./start-kubemark-master.sh"
gcloud compute ssh --zone=${ZONE} hollow-cluster-master \
--command="chmod a+x configure-kubectl.sh && chmod a+x start-kubemark-master.sh && sudo ./start-kubemark-master.sh"

sed "s/##masterip##/\"${MASTER_IP}\"/g" ${KUBE_ROOT}/test/kubemark/hollow-kubelet_template.json > ${KUBE_ROOT}/test/kubemark/hollow-kubelet.json
sed -i'' -e "s/##numreplicas##/${NUM_MINIONS:-10}/g" ${KUBE_ROOT}/test/kubemark/hollow-kubelet.json
Expand Down