Adding option to deploy fluentd-elasticsearch in diffrent namespace then kube-system

This commit is contained in:
pprokop 2016-06-16 16:01:54 +02:00
parent 523e83fbb0
commit fa91b3e461

View File

@ -19,6 +19,7 @@ package main
import ( import (
"flag" "flag"
"fmt" "fmt"
"os"
"strings" "strings"
"time" "time"
@ -45,12 +46,20 @@ func main() {
if err != nil { if err != nil {
glog.Fatalf("Failed to make client: %v", err) glog.Fatalf("Failed to make client: %v", err)
} }
namespace := api.NamespaceSystem
envNamespace := os.Getenv("NAMESPACE")
if envNamespace != "" {
if _, err := c.Namespaces().Get(envNamespace); err != nil {
glog.Fatalf("%s namespace doesn't exist: %v", envNamespace, err)
}
namespace = envNamespace
}
var elasticsearch *api.Service var elasticsearch *api.Service
// Look for endpoints associated with the Elasticsearch loggging service. // Look for endpoints associated with the Elasticsearch loggging service.
// First wait for the service to become available. // First wait for the service to become available.
for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) { for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) {
elasticsearch, err = c.Services(api.NamespaceSystem).Get("elasticsearch-logging") elasticsearch, err = c.Services(namespace).Get("elasticsearch-logging")
if err == nil { if err == nil {
break break
} }
@ -67,7 +76,7 @@ func main() {
// Wait for some endpoints. // Wait for some endpoints.
count := 0 count := 0
for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) { for t := time.Now(); time.Since(t) < 5*time.Minute; time.Sleep(10 * time.Second) {
endpoints, err = c.Endpoints(api.NamespaceSystem).Get("elasticsearch-logging") endpoints, err = c.Endpoints(namespace).Get("elasticsearch-logging")
if err != nil { if err != nil {
continue continue
} }