diff --git a/hack/jenkins/linux_integration_tests_virtualbox.sh b/hack/jenkins/linux_integration_tests_virtualbox.sh new file mode 100644 index 0000000000..451029ae45 --- /dev/null +++ b/hack/jenkins/linux_integration_tests_virtualbox.sh @@ -0,0 +1,63 @@ +#!/bin/bash + +# Copyright 2016 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# This script runs the integration tests on a Linux machine for the Virtualbox Driver + +# The script expects the following env variabls: +# MINIKUBE_LOCATION: GIT_COMMIT from upstream build. +# COMMIT: Actual commit ID from upstream build +# EXTRA_BUILD_ARGS (optional): Extra args to be passed into the minikube integrations tests +# access_token: The Github API access token. Injected by the Jenkins credential provider. + +set -e + +# Copy only the files we need to this workspace +mkdir -p out/ +gsutil cp gs://minikube-builds/${MINIKUBE_LOCATION}/minikube-linux-amd64 out/ +gsutil cp gs://minikube-builds/${MINIKUBE_LOCATION}/e2e-linux-amd64 out/ +gsutil cp -r gs://minikube-builds/${MINIKUBE_LOCATION}/testdata . + +chmod +x out/e2e-linux-amd64 +chmod +x out/minikube-linux-amd64 + +MINIKUBE_WANTREPORTERRORPROMPT=False \ + ./out/minikube-linux-amd64 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-linux-amd64 -minikube-args="--vm-driver=virtualbox --cpus=4 --show-libmachine-logs --v=100 ${EXTRA_BUILD_ARGS}" -test.v -test.timeout=30m -binary=out/minikube-linux-amd64 +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 diff --git a/hack/jenkins/minikube_set_pending.sh b/hack/jenkins/minikube_set_pending.sh index 6f8a0b54f1..ab73b8855b 100755 --- a/hack/jenkins/minikube_set_pending.sh +++ b/hack/jenkins/minikube_set_pending.sh @@ -27,7 +27,7 @@ set -e set +x -for job in "OSX-Virtualbox" "OSX-XHyve" "OSX-Virtualbox-SystemD"; do +for job in "OSX-Virtualbox" "OSX-XHyve" "OSX-Virtualbox-SystemD" "Linux-Virtualbox"; do target_url="https://storage.googleapis.com/minikube-builds/logs/${ghprbPullId}/${job}.txt" curl "https://api.github.com/repos/kubernetes/minikube/statuses/${ghprbActualCommit}?access_token=$access_token" \ -H "Content-Type: application/json" \ diff --git a/vendor/github.com/docker/machine/libmachine/provision/boot2docker.go b/vendor/github.com/docker/machine/libmachine/provision/boot2docker.go index 8b09f28c7e..e3f87f8c1e 100644 --- a/vendor/github.com/docker/machine/libmachine/provision/boot2docker.go +++ b/vendor/github.com/docker/machine/libmachine/provision/boot2docker.go @@ -197,7 +197,7 @@ func (provisioner *Boot2DockerProvisioner) AttemptIPContact(dockerPort int) { return } - if conn, err := net.DialTimeout("tcp", fmt.Sprintf("%s:%d", ip, dockerPort), 5*time.Second); err != nil { + if conn, err := net.DialTimeout("tcp", fmt.Sprintf("%s:%d", ip, dockerPort), 20*time.Second); err != nil { log.Warnf(` This machine has been allocated an IP address, but Docker Machine could not reach it successfully.