From d570ea6381344950498a91c7ef7e59b7df92b9b7 Mon Sep 17 00:00:00 2001 From: Manuel de Brito Fontes Date: Tue, 10 Jan 2017 09:54:32 -0300 Subject: [PATCH] Add resolver configuration to nginx --- controllers/nginx/pkg/template/configmap.go | 8 ++++++++ controllers/nginx/pkg/template/configmap_test.go | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/controllers/nginx/pkg/template/configmap.go b/controllers/nginx/pkg/template/configmap.go index 76d0b90f1..9e1b8ab9c 100644 --- a/controllers/nginx/pkg/template/configmap.go +++ b/controllers/nginx/pkg/template/configmap.go @@ -26,6 +26,7 @@ import ( "k8s.io/kubernetes/pkg/api" "k8s.io/ingress/controllers/nginx/pkg/config" + "k8s.io/ingress/core/pkg/net/dns" ) const ( @@ -69,6 +70,13 @@ func ReadConfig(conf *api.ConfigMap) config.Configuration { to.SkipAccessLogURLs = skipUrls to.WhitelistSourceRange = whitelist + h, err := dns.GetSystemNameServers() + if err != nil { + glog.Warningf("unexpected error reading system nameservers: %v", err) + } else { + to.Resolver = h + } + config := &mapstructure.DecoderConfig{ Metadata: nil, WeaklyTypedInput: true, diff --git a/controllers/nginx/pkg/template/configmap_test.go b/controllers/nginx/pkg/template/configmap_test.go index 0edbefe24..0bbdc4cf4 100644 --- a/controllers/nginx/pkg/template/configmap_test.go +++ b/controllers/nginx/pkg/template/configmap_test.go @@ -21,6 +21,7 @@ import ( "testing" "k8s.io/ingress/controllers/nginx/pkg/config" + "k8s.io/ingress/core/pkg/net/dns" "k8s.io/kubernetes/pkg/api" ) @@ -53,6 +54,12 @@ func TestMergeConfigMapToStruct(t *testing.T) { def.UseProxyProtocol = true def.GzipTypes = "text/html" + h, err := dns.GetSystemNameServers() + if err != nil { + t.Errorf("unexpected error: %v", err) + } + def.Resolver = h + to := ReadConfig(conf) if !reflect.DeepEqual(def, to) { t.Errorf("expected %v but retuned %v", def, to)