From 9fada306f0a5bd67c94f3531af20ba6eeaa775d2 Mon Sep 17 00:00:00 2001 From: stefanprodan Date: Wed, 19 Jun 2019 12:02:40 +0300 Subject: [PATCH] Add a service mesh provider of type none To be used for Kubernetes blue/green deployments with the no-operations router --- Makefile | 24 +++++++++--------------- pkg/router/factory.go | 2 ++ 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index 51f4e097..643be532 100644 --- a/Makefile +++ b/Makefile @@ -8,33 +8,27 @@ TS=$(shell date +%Y-%m-%d_%H-%M-%S) run: go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=istio -namespace=test \ - -metrics-server=https://prometheus.istio.weavedx.com \ - -slack-url=https://hooks.slack.com/services/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 \ - -slack-channel="devops-alerts" + -metrics-server=https://prometheus.istio.weavedx.com run-appmesh: go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=appmesh \ - -metrics-server=http://acfc235624ca911e9a94c02c4171f346-1585187926.us-west-2.elb.amazonaws.com:9090 \ - -slack-url=https://hooks.slack.com/services/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 \ - -slack-channel="devops-alerts" + -metrics-server=http://acfc235624ca911e9a94c02c4171f346-1585187926.us-west-2.elb.amazonaws.com:9090 run-nginx: go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=nginx -namespace=nginx \ - -metrics-server=http://prometheus-weave.istio.weavedx.com \ - -slack-url=https://hooks.slack.com/services/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 \ - -slack-channel="devops-alerts" + -metrics-server=http://prometheus-weave.istio.weavedx.com run-smi: go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=smi:istio -namespace=smi \ - -metrics-server=https://prometheus.istio.weavedx.com \ - -slack-url=https://hooks.slack.com/services/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 \ - -slack-channel="devops-alerts" + -metrics-server=https://prometheus.istio.weavedx.com run-gloo: go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=gloo -namespace=gloo \ - -metrics-server=https://prometheus.istio.weavedx.com \ - -slack-url=https://hooks.slack.com/services/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 \ - -slack-channel="devops-alerts" + -metrics-server=https://prometheus.istio.weavedx.com + +run-nop: + go run cmd/flagger/* -kubeconfig=$$HOME/.kube/config -log-level=info -mesh-provider=none -namespace=bg \ + -metrics-server=https://prometheus.istio.weavedx.com build: docker build -t weaveworks/flagger:$(TAG) . -f Dockerfile diff --git a/pkg/router/factory.go b/pkg/router/factory.go index c330dbac..0a13eead 100644 --- a/pkg/router/factory.go +++ b/pkg/router/factory.go @@ -45,6 +45,8 @@ func (factory *Factory) KubernetesRouter(label string, ports *map[string]int32) // MeshRouter returns a service mesh router func (factory *Factory) MeshRouter(provider string) Interface { switch { + case provider == "none": + return &NopRouter{} case provider == "nginx": return &IngressRouter{ logger: factory.logger,