diff --git a/.circleci/config.yml b/.circleci/config.yml index f0ce7222..85ff9c55 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -56,6 +56,8 @@ jobs: machine: true steps: - checkout + - attach_workspace: + at: /tmp/bin - run: test/container-build.sh - run: test/e2e-kind.sh - run: test/e2e-smi-istio.sh @@ -65,6 +67,8 @@ jobs: machine: true steps: - checkout + - attach_workspace: + at: /tmp/bin - run: test/container-build.sh - run: test/e2e-kind.sh - run: test/e2e-supergloo.sh @@ -74,6 +78,8 @@ jobs: machine: true steps: - checkout + - attach_workspace: + at: /tmp/bin - run: test/container-build.sh - run: test/e2e-kind.sh - run: test/e2e-gloo.sh @@ -83,9 +89,11 @@ jobs: machine: true steps: - checkout + - attach_workspace: + at: /tmp/bin + - run: test/container-build.sh - run: test/e2e-kind.sh - run: test/e2e-nginx.sh - - run: test/e2e-nginx-build.sh - run: test/e2e-nginx-tests.sh workflows: @@ -123,51 +131,35 @@ workflows: - /gh-pages.*/ - /docs-.*/ - /release-.*/ - - push-container: + - e2e-gloo-testing: requires: - build-binary - - e2e-istio-testing - - e2e-smi-istio-testing - - e2e-supergloo-testing filters: branches: ignore: - /gh-pages.*/ - /docs-.*/ - /release-.*/ - -# - e2e-istio-testing: -# filters: -# branches: -# ignore: -# - /gh-pages.*/ -# - /docs-.*/ -# - /release-.*/ -# - e2e-smi-istio-testing: -# filters: -# branches: -# ignore: -# - /gh-pages.*/ -# - /docs-.*/ -# - /release-.*/ -# - e2e-supergloo-testing: -# filters: -# branches: -# ignore: -# - /gh-pages.*/ -# - /docs-.*/ -# - /release-.*/ -# - e2e-nginx-testing: -# filters: -# branches: -# ignore: -# - /gh-pages.*/ -# - /docs-.*/ -# - /release-.*/ -# - e2e-gloo-testing: -# filters: -# branches: -# ignore: -# - /gh-pages.*/ -# - /docs-.*/ -# - /release-.*/ \ No newline at end of file + - e2e-nginx-testing: + requires: + - build-binary + filters: + branches: + ignore: + - /gh-pages.*/ + - /docs-.*/ + - /release-.*/ + - push-container: + requires: + - build-binary + - e2e-istio-testing + - e2e-smi-istio-testing + - e2e-supergloo-testing + - e2e-gloo-testing + - e2e-nginx-testing + filters: + branches: + ignore: + - /gh-pages.*/ + - /docs-.*/ + - /release-.*/ diff --git a/Makefile b/Makefile index 643be532..05ad744a 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ TAG?=latest VERSION?=$(shell grep 'VERSION' pkg/version/version.go | awk '{ print $$4 }' | tr -d '"') VERSION_MINOR:=$(shell grep 'VERSION' pkg/version/version.go | awk '{ print $$4 }' | tr -d '"' | rev | cut -d'.' -f2- | rev) PATCH:=$(shell grep 'VERSION' pkg/version/version.go | awk '{ print $$4 }' | tr -d '"' | awk -F. '{print $$NF}') -SOURCE_DIRS = cmd pkg/apis pkg/controller pkg/server pkg/logging pkg/version +SOURCE_DIRS = cmd pkg/apis pkg/controller pkg/server pkg/canary pkg/metrics pkg/router pkg/notifier LT_VERSION?=$(shell grep 'VERSION' cmd/loadtester/main.go | awk '{ print $$4 }' | tr -d '"' | head -n1) TS=$(shell date +%Y-%m-%d_%H-%M-%S) diff --git a/test/e2e-gloo-build.sh b/test/e2e-gloo-build.sh deleted file mode 100755 index 573ae096..00000000 --- a/test/e2e-gloo-build.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash - -set -o errexit - -REPO_ROOT=$(git rev-parse --show-toplevel) -export KUBECONFIG="$(kind get kubeconfig-path --name="kind")" - -echo '>>> Building Flagger' -cd ${REPO_ROOT} && docker build -t test/flagger:latest . -f Dockerfile - -echo '>>> Installing Flagger' -kind load docker-image test/flagger:latest - -echo '>>> Installing Flagger' -helm upgrade -i flagger ${REPO_ROOT}/charts/flagger \ ---namespace gloo-system \ ---set prometheus.install=true \ ---set meshProvider=gloo - -# Give flagger permissions for gloo objects -kubectl create clusterrolebinding flagger-gloo --clusterrole=gloo-role-gateway --serviceaccount=gloo-system:flagger - -kubectl -n gloo-system set image deployment/flagger flagger=test/flagger:latest - -kubectl -n gloo-system rollout status deployment/flagger -kubectl -n gloo-system rollout status deployment/flagger-prometheus diff --git a/test/e2e-gloo.sh b/test/e2e-gloo.sh index b4467b19..273df7de 100755 --- a/test/e2e-gloo.sh +++ b/test/e2e-gloo.sh @@ -23,3 +23,17 @@ helm upgrade -i gloo gloo/gloo --version 0.13.29 \ kubectl -n gloo-system rollout status deployment/gloo kubectl -n gloo-system rollout status deployment/gateway-proxy kubectl -n gloo-system get all + +echo '>>> Installing Flagger' +kind load docker-image test/flagger:latest + +echo '>>> Installing Flagger' +helm upgrade -i flagger ${REPO_ROOT}/charts/flagger \ +--namespace gloo-system \ +--set prometheus.install=true \ +--set meshProvider=gloo + +kubectl -n gloo-system set image deployment/flagger flagger=test/flagger:latest + +kubectl -n gloo-system rollout status deployment/flagger +kubectl -n gloo-system rollout status deployment/flagger-prometheus \ No newline at end of file diff --git a/test/e2e-nginx-build.sh b/test/e2e-nginx-build.sh deleted file mode 100755 index 38e540dc..00000000 --- a/test/e2e-nginx-build.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash - -set -o errexit - -REPO_ROOT=$(git rev-parse --show-toplevel) -export KUBECONFIG="$(kind get kubeconfig-path --name="kind")" - -echo '>>> Building Flagger' -cd ${REPO_ROOT} && docker build -t test/flagger:latest . -f Dockerfile - -echo '>>> Loading Flagger image' -kind load docker-image test/flagger:latest - -echo '>>> Installing Flagger' -helm upgrade -i flagger ${REPO_ROOT}/charts/flagger \ ---namespace ingress-nginx \ ---set prometheus.install=true \ ---set meshProvider=nginx - -kubectl -n ingress-nginx set image deployment/flagger flagger=test/flagger:latest - -kubectl -n ingress-nginx rollout status deployment/flagger -kubectl -n ingress-nginx rollout status deployment/flagger-prometheus diff --git a/test/e2e-nginx.sh b/test/e2e-nginx.sh index 3fa97bb7..f7df3912 100755 --- a/test/e2e-nginx.sh +++ b/test/e2e-nginx.sh @@ -26,4 +26,17 @@ helm upgrade -i nginx-ingress stable/nginx-ingress \ kubectl -n ingress-nginx rollout status deployment/nginx-ingress-controller kubectl -n ingress-nginx get all +echo '>>> Loading Flagger image' +kind load docker-image test/flagger:latest + +echo '>>> Installing Flagger' +helm upgrade -i flagger ${REPO_ROOT}/charts/flagger \ +--namespace ingress-nginx \ +--set prometheus.install=true \ +--set meshProvider=nginx + +kubectl -n ingress-nginx set image deployment/flagger flagger=test/flagger:latest + +kubectl -n ingress-nginx rollout status deployment/flagger +kubectl -n ingress-nginx rollout status deployment/flagger-prometheus