From 34fd0ebcd0aeb23d301655781622d49f65791340 Mon Sep 17 00:00:00 2001
From: Frederic Branczyk <fbranczyk@gmail.com>
Date: Fri, 20 Jan 2017 16:14:50 +0100
Subject: [PATCH] hack: allow deploying the example app in non-default
 namespace

---
 hack/example-service-monitoring/deploy   | 16 ++++++++++++----
 hack/example-service-monitoring/teardown |  6 +++++-
 2 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/hack/example-service-monitoring/deploy b/hack/example-service-monitoring/deploy
index 9b359d2d..420b5940 100755
--- a/hack/example-service-monitoring/deploy
+++ b/hack/example-service-monitoring/deploy
@@ -4,8 +4,16 @@ if [ -z "${KUBECONFIG}" ]; then
     KUBECONFIG=~/.kube/config
 fi
 
-kubectl --kubeconfig="$KUBECONFIG" apply -f manifests/examples/example-app/prometheus-frontend-svc.yaml
-kubectl --kubeconfig="$KUBECONFIG" apply -f manifests/examples/example-app/example-app.yaml
-kubectl --kubeconfig="$KUBECONFIG" create -f manifests/examples/example-app/prometheus-frontend.yaml
-kubectl --kubeconfig="$KUBECONFIG" create -f manifests/examples/example-app/servicemonitor-frontend.yaml
+if [ -z "${NAMESPACE}" ]; then
+    NAMESPACE=default
+fi
+
+kubectl --namespace "$NAMESPACE" --kubeconfig="$KUBECONFIG" apply -f manifests/examples/example-app/prometheus-frontend-svc.yaml
+kubectl --namespace "$NAMESPACE" --kubeconfig="$KUBECONFIG" apply -f manifests/examples/example-app/example-app.yaml
+
+# `kubectl apply` is currently not working for third party resources so we are
+# using `kubectl create` here for the time being.
+# (https://github.com/kubernetes/kubernetes/issues/29542)
+kubectl --namespace "$NAMESPACE" --kubeconfig="$KUBECONFIG" create -f manifests/examples/example-app/prometheus-frontend.yaml
+kubectl --namespace "$NAMESPACE" --kubeconfig="$KUBECONFIG" create -f manifests/examples/example-app/servicemonitor-frontend.yaml
 
diff --git a/hack/example-service-monitoring/teardown b/hack/example-service-monitoring/teardown
index a7362eab..a631fe3e 100755
--- a/hack/example-service-monitoring/teardown
+++ b/hack/example-service-monitoring/teardown
@@ -4,5 +4,9 @@ if [ -z "${KUBECONFIG}" ]; then
     KUBECONFIG=~/.kube/config
 fi
 
-kubectl --kubeconfig="$KUBECONFIG" delete -f manifests/examples/example-app
+if [ -z "${NAMESPACE}" ]; then
+    NAMESPACE=default
+fi
+
+kubectl --namespace "$NAMESPACE" --kubeconfig="$KUBECONFIG" delete -f manifests/examples/example-app
 
-- 
GitLab