minikube/hack/jenkins/linux_integration_tests_non...

94 lines
3.4 KiB
Bash
Raw Normal View History

2017-02-22 03:27:51 +00:00
#!/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 none Driver
2017-02-22 03:27:51 +00:00
# The script expects the following env variables:
2017-05-10 20:26:05 +00:00
# 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
2022-04-25 07:54:40 +00:00
# access_token: The GitHub API access token. Injected by the Jenkins credential provider.
2017-05-10 20:26:05 +00:00
2017-02-22 03:27:51 +00:00
set -e
2021-05-06 23:23:41 +00:00
OS="linux"
ARCH="amd64"
DRIVER="none"
JOB_NAME="none_Linux"
2020-12-09 00:18:12 +00:00
EXTRA_START_ARGS="--bootstrapper=kubeadm"
2019-10-24 04:15:33 +00:00
EXPECTED_DEFAULT_DRIVER="kvm2"
2017-07-07 17:28:30 +00:00
SUDO_PREFIX="sudo -E "
export KUBECONFIG="/root/.kube/config"
2017-02-22 03:27:51 +00:00
# "none" driver specific cleanup from previous runs.
sudo kubeadm reset -f || true
# kubeadm reset may not stop pods immediately
docker rm -f $(docker ps -aq) >/dev/null 2>&1 || true
# Cleanup data directory
sudo rm -rf /data/*
# Cleanup old Kubernetes configs
sudo rm -rf /etc/kubernetes/*
2020-02-13 02:11:44 +00:00
sudo rm -rf /var/lib/minikube/*
# Stop any leftover kubelet
2020-03-12 18:43:34 +00:00
sudo systemctl is-active --quiet kubelet \
2018-12-03 20:46:58 +00:00
&& echo "stopping kubelet" \
&& sudo systemctl stop -f kubelet
# conntrack is required for Kubernetes 1.18 and higher for none driver
if ! conntrack --version &>/dev/null; then
2020-03-25 20:30:08 +00:00
echo "WARNING: contrack is not installed. will try to install."
sudo apt-get update -qq
sudo apt-get -qq -y install conntrack
fi
# socat is required for kubectl port forward which is used in some tests such as validateHelmTillerAddon
2020-03-25 20:26:47 +00:00
if ! which socat &>/dev/null; then
2020-03-25 20:30:08 +00:00
echo "WARNING: socat is not installed. will try to install."
2020-03-25 20:26:47 +00:00
sudo apt-get update -qq
sudo apt-get -qq -y install socat
fi
# cri-dockerd is required for Kubernetes 1.24 and higher for none driver
if ! cri-dockerd &>/dev/null; then
echo "WARNING: cri-dockerd is not installed. will try to install."
2022-06-08 22:03:27 +00:00
CRI_DOCKER_VERSION="d627d3e64a0ebf4cd4c9f80c131c34fc615258b5"
git clone -n https://github.com/Mirantis/cri-dockerd
cd cri-dockerd
2022-06-08 22:03:27 +00:00
git checkout "$CRI_DOCKER_VERSION"
env CGO_ENABLED=0 go build -ldflags '-X github.com/Mirantis/cri-dockerd/version.GitCommit=${CRI_DOCKER_VERSION:0:7}' -o cri-dockerd
cd ..
sudo cp cri-dockerd/src/cri-dockerd /usr/bin/cri-dockerd
sudo cp cri-dockerd/packaging/systemd/cri-docker.service /usr/lib/systemd/system/cri-docker.service
sudo cp cri-dockerd/packaging/systemd/cri-docker.socket /usr/lib/systemd/system/cri-docker.socket
fi
2022-05-19 23:57:02 +00:00
# crictl is required for Kubernetes 1.24 and higher for none driver
if ! crictl &>/dev/null; then
echo "WARNING: crictl is not installed. will try to install."
VERSION="v1.17.0"
curl -L https://github.com/kubernetes-sigs/cri-tools/releases/download/$VERSION/crictl-${VERSION}-linux-amd64.tar.gz --output crictl-${VERSION}-linux-amd64.tar.gz
sudo tar zxvf crictl-$VERSION-linux-amd64.tar.gz -C /usr/local/bin
fi
2020-12-15 17:06:17 +00:00
# We need this for reasons now
sudo sysctl fs.protected_regular=0
2021-05-06 20:05:02 +00:00
source ./common.sh