#!/bin/bash# Copyright 2017 The Kubernetes Authors.## 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.set -xfunction clean_exit(){local error_code="$?"local spawned=$(jobs -p)if [ -n "$spawned" ]; thensudo kill $(jobs -p)fireturn $error_code}trap "clean_exit" EXIT# Switch off SE-Linuxsetenforce 0# Mount root to fix dns issues# Define $HOME since somehow this is not definedHOME=/home/travissudo mount --make-rshared /# Install docker if neededpath_to_executable=$(which docker)if [ -x "$path_to_executable" ] ; thenecho "Found Docker installation"elsecurl -sSL https://get.docker.io | sudo bashfidocker --version# Get the latest stable version of kubernetesK8S_VERSION=$(curl -sS https://storage.googleapis.com/kubernetes-release/release/stable.txt)echo "K8S_VERSION : ${K8S_VERSION}"echo "Starting docker service"sudo systemctl enable docker.servicesudo systemctl start docker.service --ignore-dependenciesecho "Checking docker service"sudo docker psecho "Download Kubernetes CLI"wget -O kubectl "http://storage.googleapis.com/kubernetes-release/release/${K8S_VERSION}/bin/linux/amd64/kubectl"sudo chmod +x kubectlsudo mv kubectl /usr/local/bin/echo "Download minikube from minikube project"wget -O minikube "https://storage.googleapis.com/minikube/releases/v0.30.0/minikube-linux-amd64"sudo chmod +x minikubesudo mv minikube /usr/local/bin/# L68-100: Set up minikube within Travis CI# See https://github.com/kubernetes/minikube/blob/master/README.md#linux-continuous-integration-without-vm-supportecho "Set up minikube"export MINIKUBE_WANTUPDATENOTIFICATION=falseexport MINIKUBE_WANTREPORTERRORPROMPT=falseexport CHANGE_MINIKUBE_NONE_USER=truesudo mkdir -p $HOME/.kubesudo mkdir -p $HOME/.minikubesudo touch $HOME/.kube/configexport KUBECONFIG=$HOME/.kube/configexport MINIKUBE_HOME=$HOMEexport MINIKUBE_DRIVER=${MINIKUBE_DRIVER:-none}# Used bootstrapper to be kubeadm for the most recent k8s version# since localkube is depreciated and only supported up to version 1.10.0echo "Starting minikube"sudo minikube start --vm-driver=$MINIKUBE_DRIVER --bootstrapper=kubeadm --kubernetes-version=$K8S_VERSION --logtostderrMINIKUBE_OK="false"echo "Waiting for minikube to start..."# this for loop waits until kubectl can access the api server that Minikube has createdfor i in {1..90}; do # timeout for 3 minuteskubectl get po &> /dev/nullif [ $? -ne 1 ]; thenMINIKUBE_OK="true"breakfisleep 2done# Shut down CI if minikube did not start and show logsif [ $MINIKUBE_OK == "false" ]; thensudo minikube logsdie $LINENO "minikube did not start"fiecho "Dump Kubernetes Objects..."kubectl get componentstatuseskubectl get configmapskubectl get daemonsetskubectl get deploymentskubectl get eventskubectl get endpointskubectl get horizontalpodautoscalerskubectl get ingresskubectl get jobskubectl get limitrangeskubectl get nodeskubectl get namespaceskubectl get podskubectl get persistentvolumeskubectl get persistentvolumeclaimskubectl get quotakubectl get resourcequotaskubectl get replicasetskubectl get replicationcontrollerskubectl get secretskubectl get serviceaccountskubectl get servicesecho "Running tests..."set -x -e# Yield execution to venv command$*
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。