Run some e2e tests against the kubernetes instance
Change-Id: I6fdf5ce4fbf0e2c9073e162d862de5c350b949a2
This commit is contained in:
parent
67b4836ccd
commit
5b94081b13
|
@ -14,4 +14,5 @@
|
|||
|
||||
set -ex
|
||||
|
||||
echo "In gate_test_hook"
|
||||
$BASE/new/devstack-gate/devstack-vm-gate.sh
|
||||
|
|
|
@ -14,5 +14,79 @@
|
|||
|
||||
# This script is executed inside post_test_hook function in devstack gate.
|
||||
|
||||
BASE_DIR=$(cd $(dirname $BASH_SOURCE)/.. && pwd)
|
||||
|
||||
cd $BASE/new/devstack
|
||||
source openrc admin admin
|
||||
|
||||
echo "In post_test_hook"
|
||||
|
||||
# Get the latest stable version of kubernetes
|
||||
export K8S_VERSION=$(curl -sS https://storage.googleapis.com/kubernetes-release/release/stable.txt)
|
||||
echo "K8S_VERSION : ${K8S_VERSION}"
|
||||
|
||||
echo "Download Kubernetes CLI"
|
||||
sudo wget -O kubectl "http://storage.googleapis.com/kubernetes-release/release/${K8S_VERSION}/bin/linux/amd64/kubectl"
|
||||
sudo chmod 755 kubectl
|
||||
./kubectl get nodes
|
||||
|
||||
echo "Waiting for kubernetes service to start..."
|
||||
for i in {1..600}
|
||||
do
|
||||
running_count=$(./kubectl -s=http://127.0.0.1:8080 get svc --no-headers 2>/dev/null | grep "443" | wc -l)
|
||||
if [ "$running_count" -ge 1 ]; then
|
||||
break
|
||||
fi
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
|
||||
echo "Cluster created!"
|
||||
echo ""
|
||||
|
||||
echo "Dump Kubernetes Objects..."
|
||||
./kubectl -s=http://127.0.0.1:8080 get componentstatuses
|
||||
./kubectl -s=http://127.0.0.1:8080 get configmaps
|
||||
./kubectl -s=http://127.0.0.1:8080 get daemonsets
|
||||
./kubectl -s=http://127.0.0.1:8080 get deployments
|
||||
./kubectl -s=http://127.0.0.1:8080 get events
|
||||
./kubectl -s=http://127.0.0.1:8080 get endpoints
|
||||
./kubectl -s=http://127.0.0.1:8080 get horizontalpodautoscalers
|
||||
./kubectl -s=http://127.0.0.1:8080 get ingress
|
||||
./kubectl -s=http://127.0.0.1:8080 get jobs
|
||||
./kubectl -s=http://127.0.0.1:8080 get limitranges
|
||||
./kubectl -s=http://127.0.0.1:8080 get nodes
|
||||
./kubectl -s=http://127.0.0.1:8080 get namespaces
|
||||
./kubectl -s=http://127.0.0.1:8080 get pods
|
||||
./kubectl -s=http://127.0.0.1:8080 get persistentvolumes
|
||||
./kubectl -s=http://127.0.0.1:8080 get persistentvolumeclaims
|
||||
./kubectl -s=http://127.0.0.1:8080 get quota
|
||||
./kubectl -s=http://127.0.0.1:8080 get resourcequotas
|
||||
./kubectl -s=http://127.0.0.1:8080 get replicasets
|
||||
./kubectl -s=http://127.0.0.1:8080 get replicationcontrollers
|
||||
./kubectl -s=http://127.0.0.1:8080 get secrets
|
||||
./kubectl -s=http://127.0.0.1:8080 get serviceaccounts
|
||||
./kubectl -s=http://127.0.0.1:8080 get services
|
||||
|
||||
|
||||
echo "Running tests..."
|
||||
export GOPATH=${BASE_DIR}/go
|
||||
export KUBE_MASTER=local
|
||||
export KUBECONFIG=/var/run/kubernetes/admin.kubeconfig
|
||||
export KUBERNETES_PROVIDER=local
|
||||
export KUBE_MASTER_IP=https://127.0.0.1:6443/
|
||||
|
||||
pushd $GOPATH/src/k8s.io/kubernetes >/dev/null
|
||||
sudo -E PATH=$GOPATH/bin:$PATH make all WHAT=cmd/kubectl
|
||||
sudo -E PATH=$GOPATH/bin:$PATH make all WHAT=vendor/github.com/onsi/ginkgo/ginkgo
|
||||
|
||||
# e2e test does not work with 1.8, so fall back to 1.7
|
||||
sudo curl -sL -o ./gimme https://raw.githubusercontent.com/travis-ci/gimme/master/gimme
|
||||
sudo chmod +x ./gimme
|
||||
sudo ./gimme 1.7
|
||||
env | grep HOME
|
||||
source $HOME/.gimme/envs/go1.7.env
|
||||
|
||||
sudo -E PATH=$GOPATH/bin:$PATH make all WHAT=test/e2e/e2e.test
|
||||
sudo -E PATH=$GOPATH/bin:$PATH go run hack/e2e.go -- -v --test --test_args="--ginkgo.trace=true --ginkgo.failFast=true --ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[HPA\]|Dashboard|Services.*functioning.*NodePort"
|
||||
popd >/dev/null
|
|
@ -15,3 +15,5 @@
|
|||
# This script is executed inside pre_test_hook function in devstack gate.
|
||||
|
||||
export localconf=$BASE/new/devstack/local.conf
|
||||
|
||||
echo "In pre_test_hook"
|
||||
|
|
|
@ -69,11 +69,23 @@ function install_k8s_cloud_provider {
|
|||
git clone https://${CONFORMANCE_REPO} ${K8S_SRC}
|
||||
fi
|
||||
go get -u github.com/jteeuwen/go-bindata/go-bindata || true
|
||||
go get -u github.com/cloudflare/cfssl/cmd/... || true
|
||||
|
||||
# Run the script that builds kubernetes from source and starts the processes
|
||||
pushd ${K8S_SRC} >/dev/null
|
||||
hack/install-etcd.sh
|
||||
run_process kubernetes "sudo -E hack/local-up-cluster.sh"
|
||||
export PATH=${K8S_SRC}/third_party/etcd:$GOPATH/bin:${PATH}
|
||||
|
||||
# Seed the log files so devstack-gate can capture the logs
|
||||
export LOG_DIR=${SCREEN_LOGDIR:-/opt/stack/logs}
|
||||
sudo mkdir -p $LOG_DIR
|
||||
sudo touch $LOG_DIR/kube-apiserver.log;sudo ln -s $LOG_DIR/kube-apiserver.log $LOG_DIR/screen-kube-apiserver.log
|
||||
sudo touch $LOG_DIR/kube-controller-manager.log;sudo ln -s $LOG_DIR/kube-controller-manager.log $LOG_DIR/screen-kube-controller-manager.log
|
||||
sudo touch $LOG_DIR/kube-proxy.log;sudo ln -s $LOG_DIR/kube-proxy.log $LOG_DIR/screen-kube-proxy.log
|
||||
sudo touch $LOG_DIR/kube-scheduler.log;sudo ln -s $LOG_DIR/kube-scheduler.log $LOG_DIR/screen-kube-scheduler.log
|
||||
sudo touch $LOG_DIR/kubelet.log;sudo ln -s $LOG_DIR/kubelet.log $LOG_DIR/screen-kubelet.log
|
||||
|
||||
run_process kubernetes "sudo -E PATH=$PATH hack/local-up-cluster.sh"
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue