Parameterize jenkins jobs

pull/981/head
Matt Rickard 2017-01-09 15:17:17 -08:00
parent c8f3676016
commit d8bc509561
5 changed files with 41 additions and 106 deletions

View File

@ -19,6 +19,9 @@
# The script expects the following env variables:
# OS_ARCH: The operating system and the architecture separated by a hyphen '-' (e.g. darwin-amd64, linux-amd64, windows-amd64)
# VM_DRIVER: the vm-driver to use for the test
# EXTRA_BUILD_ARGS: additional flags to pass into minikube start
# JOB_NAME: the name of the logfile and check name to update on github
# Copy only the files we need to this workspace
@ -30,3 +33,30 @@ gsutil cp gs://minikube-builds/${MINIKUBE_LOCATION}/testdata/busybox.yaml testda
# Set the executable bit on the e2e binary and out binary
chmod +x out/e2e-${OS_ARCH}
chmod +x out/minikube-${OS_ARCH}
MINIKUBE_WANTREPORTERRORPROMPT=False \
./out/minikube-${OS_ARCH} delete || true
rm -rf $HOME/.minikube || true
# Allow this to fail, we'll switch on the return code below.
set +e
out/e2e-${OS_ARCH} -minikube-args="--vm-driver=${VM_DRIVER} --cpus=4 --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-${OS_ARCH}
result=$?
set -e
if [[ $result -eq 0 ]]; then
status="success"
else
status="failure"
fi
set +x
target_url="https://storage.googleapis.com/minikube-builds/logs/${MINIKUBE_LOCATION}/${JOB_NAME}.txt"
curl "https://api.github.com/repos/kubernetes/minikube/statuses/${COMMIT}?access_token=$access_token" \
-H "Content-Type: application/json" \
-X POST \
-d "{\"state\": \"$status\", \"description\": \"Jenkins\", \"target_url\": \"$target_url\", \"context\": \"${JOB_NAME}\"}"
set -x
exit $result

View File

@ -26,33 +26,9 @@
set -e
OS_ARCH="linux-amd64"
VM_DRIVER="kvm"
JOB_NAME="Linux-KVM"
# Download files and set permissions
source common.sh
MINIKUBE_WANTREPORTERRORPROMPT=False \
./out/minikube-${OS_ARCH} delete || true
rm -rf $HOME/.minikube || true
# Allow this to fail, we'll switch on the return code below.
set +e
out/e2e-${OS_ARCH} -minikube-args="--vm-driver=kvm --cpus=4 --show-libmachine-logs --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-${OS_ARCH}
result=$?
set -e
if [[ $result -eq 0 ]]; then
status="success"
else
status="failure"
fi
set +x
target_url="https://storage.googleapis.com/minikube-builds/logs/${MINIKUBE_LOCATION}/Linux-KVM.txt"
curl "https://api.github.com/repos/kubernetes/minikube/statuses/${COMMIT}?access_token=$access_token" \
-H "Content-Type: application/json" \
-X POST \
-d "{\"state\": \"$status\", \"description\": \"Jenkins\", \"target_url\": \"$target_url\", \"context\": \"Linux-KVM\"}"
set -x
exit $result

View File

@ -26,34 +26,8 @@
set -e
OS_ARCH="linux-amd64"
VM_DRIVER="virtualbox"
JOB_NAME="Linux-VirtualBox"
# Download files and set permissions
source common.sh
MINIKUBE_WANTREPORTERRORPROMPT=False \
./out/minikube-${OS_ARCH} delete || true
rm -rf $HOME/.minikube || true
rm -rf $HOME/.docker || true
# Allow this to fail, we'll switch on the return code below.
set +e
out/e2e-${OS_ARCH} -minikube-args="--vm-driver=virtualbox --cpus=4 --show-libmachine-logs --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-${OS_ARCH}
result=$?
set -e
if [[ $result -eq 0 ]]; then
status="success"
else
status="failure"
fi
set +x
target_url="https://storage.googleapis.com/minikube-builds/logs/${MINIKUBE_LOCATION}/Linux-VirtualBox.txt"
curl "https://api.github.com/repos/kubernetes/minikube/statuses/${COMMIT}?access_token=$access_token" \
-H "Content-Type: application/json" \
-X POST \
-d "{\"state\": \"$status\", \"description\": \"Jenkins\", \"target_url\": \"$target_url\", \"context\": \"Linux-VirtualBox\"}"
set -x
exit $result

View File

@ -26,31 +26,8 @@
set -e
OS_ARCH="darwin-amd64"
VM_DRIVER="virtualbox"
JOB_NAME="OSX-Virtualbox"
# Download files and set permissions
source common.sh
./out/minikube-${OS_ARCH} delete || true
rm -rf $HOME/.minikube || true
# Allow this to fail, we'll switch on the return code below.
set +e
out/e2e-${OS_ARCH} -minikube-args="--vm-driver=virtualbox --cpus=4 --show-libmachine-logs --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-${OS_ARCH}
result=$?
set -e
if [[ $result -eq 0 ]]; then
status="success"
else
status="failure"
fi
set +x
target_url="https://storage.googleapis.com/minikube-builds/logs/${MINIKUBE_LOCATION}/OSX-Virtualbox.txt"
curl "https://api.github.com/repos/kubernetes/minikube/statuses/${COMMIT}?access_token=$access_token" \
-H "Content-Type: application/json" \
-X POST \
-d "{\"state\": \"$status\", \"description\": \"Jenkins\", \"target_url\": \"$target_url\", \"context\": \"OSX-VirtualBox\"}"
set -x
exit $result
source common.sh

View File

@ -27,31 +27,9 @@
set -e
OS_ARCH="darwin-amd64"
VM_DRIVER="xhyve"
JOB_NAME="OSX-Xhyve"
# Download files and set permissions
source common.sh
./out/minikube-darwin-amd64 delete || true
rm -rf $HOME/.minikube || true
# Allow this to fail, we'll switch on the return code below.
set +e
out/e2e-${OS_ARCH} -minikube-args="--vm-driver=xhyve --cpus=4 --show-libmachine-logs --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-${OS_ARCH}
result=$?
set -e
if [[ $result -eq 0 ]]; then
status="success"
else
status="failure"
fi
set +x
target_url="https://storage.googleapis.com/minikube-builds/logs/${MINIKUBE_LOCATION}/OSX-XHyve.txt"
curl "https://api.github.com/repos/kubernetes/minikube/statuses/${COMMIT}?access_token=$access_token" \
-H "Content-Type: application/json" \
-X POST \
-d "{\"state\": \"$status\", \"description\": \"Jenkins\", \"target_url\": \"$target_url\", \"context\": \"OSX-XHyve\"}"
set -x
exit $result