From f3a47b9bba0ebcf575a8bd35e3f571434a7cd5e3 Mon Sep 17 00:00:00 2001 From: Damien Grisonnet Date: Tue, 31 Mar 2020 13:20:27 +0200 Subject: [PATCH 1/2] ci: update e2e tests according to compat matrix Signed-off-by: Damien Grisonnet --- tests/e2e/travis-e2e.sh | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/tests/e2e/travis-e2e.sh b/tests/e2e/travis-e2e.sh index 4efb2bd1..4037460c 100755 --- a/tests/e2e/travis-e2e.sh +++ b/tests/e2e/travis-e2e.sh @@ -10,19 +10,33 @@ set -x curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl chmod +x kubectl -curl -Lo kind https://github.com/kubernetes-sigs/kind/releases/download/v0.4.0/kind-linux-amd64 +curl -Lo kind https://github.com/kubernetes-sigs/kind/releases/download/v0.6.1/kind-linux-amd64 chmod +x kind -./kind create cluster -export KUBECONFIG="$(./kind get kubeconfig-path)" +run_e2e_tests() { + cluster_version=$1 -# create namespace, permissions, and CRDs -./kubectl create -f manifests/setup + ./kind create cluster --image=kindest/node:$cluster_version + export KUBECONFIG="$(./kind get kubeconfig-path)" -# wait for CRD creation to complete -until ./kubectl get servicemonitors --all-namespaces ; do date; sleep 1; echo ""; done + # create namespace, permissions, and CRDs + ./kubectl create -f manifests/setup -# create monitoring components -./kubectl create -f manifests/ + # wait for CRD creation to complete + until ./kubectl get servicemonitors --all-namespaces ; do date; sleep 1; echo ""; done + + # create monitoring components + ./kubectl create -f manifests/ + + make test-e2e + + ./kind delete cluster +} + +cluster_compatible_versions=("v1.14.1" "v1.15.0" "v1.16.1" "v1.17.0") + +for cluster_version in "${cluster_compatible_versions[@]}" +do + run_e2e_tests $cluster_version +done -make test-e2e From 3101c620c009bccf123a804f3c4603b95852927b Mon Sep 17 00:00:00 2001 From: Damien Grisonnet Date: Tue, 31 Mar 2020 16:34:40 +0200 Subject: [PATCH 2/2] test: increase pod polling time The original polling time was a bit short for all pods to be up which made e2e tests fail half of the time. Signed-off-by: Damien Grisonnet --- tests/e2e/main_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/e2e/main_test.go b/tests/e2e/main_test.go index e63730a3..a8520046 100644 --- a/tests/e2e/main_test.go +++ b/tests/e2e/main_test.go @@ -87,7 +87,7 @@ func TestQueryPrometheus(t *testing.T) { } // Wait for pod to respond at queries at all. Then start verifying their results. - err := wait.Poll(5*time.Second, 1*time.Minute, func() (bool, error) { + err := wait.Poll(5*time.Second, 2*time.Minute, func() (bool, error) { _, err := promClient.query("up") return err == nil, nil })