From 767b0d953f025f169153d5f297fdce95af9eedca Mon Sep 17 00:00:00 2001 From: Lili Cosic Date: Fri, 17 Apr 2020 11:03:06 +0200 Subject: [PATCH 1/3] scripts,tests: Bump kubernetes version to 1.18 --- scripts/minikube-start.sh | 2 +- tests/e2e/travis-e2e.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/minikube-start.sh b/scripts/minikube-start.sh index eb29e860..6a769b71 100755 --- a/scripts/minikube-start.sh +++ b/scripts/minikube-start.sh @@ -2,7 +2,7 @@ minikube delete minikube addons disable metrics-server minikube start \ - --kubernetes-version=v1.16.0 \ + --kubernetes-version=v1.18.1 \ --memory=6g \ --bootstrapper=kubeadm \ --extra-config=kubelet.authentication-token-webhook=true \ diff --git a/tests/e2e/travis-e2e.sh b/tests/e2e/travis-e2e.sh index c95f763c..ee6d3a93 100755 --- a/tests/e2e/travis-e2e.sh +++ b/tests/e2e/travis-e2e.sh @@ -13,7 +13,7 @@ chmod +x kubectl curl -Lo kind https://github.com/kubernetes-sigs/kind/releases/download/v0.6.1/kind-linux-amd64 chmod +x kind -./kind create cluster --image=kindest/node:v1.17.0 +./kind create cluster --image=kindest/node:v1.18.0 export KUBECONFIG="$(./kind get kubeconfig-path)" # create namespace, permissions, and CRDs From efa1b8c189bbfb5af8c4292d1de180fb76021ae3 Mon Sep 17 00:00:00 2001 From: Lili Cosic Date: Fri, 17 Apr 2020 11:18:06 +0200 Subject: [PATCH 2/3] README.md: Change compatibility matrix --- README.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 4172e516..50d42d52 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ This adapter is an Extension API Server and Kubernetes needs to be have this fea To try out this stack, start [minikube](https://github.com/kubernetes/minikube) with the following command: ```shell -$ minikube delete && minikube start --kubernetes-version=v1.17.3 --memory=6g --bootstrapper=kubeadm --extra-config=kubelet.authentication-token-webhook=true --extra-config=kubelet.authorization-mode=Webhook --extra-config=scheduler.address=0.0.0.0 --extra-config=controller-manager.address=0.0.0.0 +$ minikube delete && minikube start --kubernetes-version=v1.18.1 --memory=6g --bootstrapper=kubeadm --extra-config=kubelet.authentication-token-webhook=true --extra-config=kubelet.authorization-mode=Webhook --extra-config=scheduler.address=0.0.0.0 --extra-config=controller-manager.address=0.0.0.0 ``` The kube-prometheus stack includes a resource metrics API server, so the metrics-server addon is not necessary. Ensure the metrics-server addon is disabled on minikube: @@ -89,15 +89,18 @@ $ minikube addons disable metrics-server ### Kubernetes compatibility matrix -| kube-prometheus stack | Kubernetes 1.14 | Kubernetes 1.15 | Kubernetes 1.16 | Kubernetes 1.17 | -|-----------------------|-----------------|-----------------|-----------------|-----------------| -| `release-0.3` | ✔ | ✔ | ✔ | ✔ | -| `release-0.4` | ✗ | ✗ | ✔ | ✔ | -| `HEAD` | ✗ | ✗ | ✗ | ✔ | +The following versions are supported and work as we test against these versions in their respective branches. But note that other versions might work! + +| kube-prometheus stack | Kubernetes 1.14 | Kubernetes 1.15 | Kubernetes 1.16 | Kubernetes 1.17 | Kubernetes 1.18 | +|-----------------------|-----------------|-----------------|-----------------|-----------------|-----------------| +| `release-0.3` | ✔ | ✔ | ✔ | ✔ | ✗ +| `release-0.4` | ✗ | ✗ | ✔ | ✔ | ✗ +| `release-0.5` | ✗ | ✗ | ✗ | ✔ | ✔ +| `HEAD` | ✗ | ✗ | ✗ | ✗ | ✔ ## Quickstart ->Note: For versions before Kubernetes v1.17.0 refer to the [Kubernetes compatibility matrix](#kubernetes-compatibility-matrix) in order to choose a compatible branch. +>Note: For versions before Kubernetes v1.18.z refer to the [Kubernetes compatibility matrix](#kubernetes-compatibility-matrix) in order to choose a compatible branch. This project is intended to be used as a library (i.e. the intent is not for you to create your own modified copy of this repository). From 3624e83af62b9050acaa23ac04dc627173324e23 Mon Sep 17 00:00:00 2001 From: Lili Cosic Date: Mon, 20 Apr 2020 15:04:06 +0200 Subject: [PATCH 3/3] tests/e2e/travis-e2e.sh: Test against 1.17 and 1.18 --- tests/e2e/travis-e2e.sh | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/tests/e2e/travis-e2e.sh b/tests/e2e/travis-e2e.sh index ee6d3a93..8360442d 100755 --- a/tests/e2e/travis-e2e.sh +++ b/tests/e2e/travis-e2e.sh @@ -13,16 +13,27 @@ chmod +x kubectl curl -Lo kind https://github.com/kubernetes-sigs/kind/releases/download/v0.6.1/kind-linux-amd64 chmod +x kind -./kind create cluster --image=kindest/node:v1.18.0 -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 -make test-e2e + # create monitoring components + ./kubectl create -f manifests/ + + make test-e2e + ./kind delete cluster +} +cluster_compatible_versions=("v1.17.0" "v1.18.0") + +for cluster_version in "${cluster_compatible_versions[@]}" +do + run_e2e_tests $cluster_version +done