From 2b5d4d79283b58f6fc89d1a214d0f5282797d4e2 Mon Sep 17 00:00:00 2001 From: Elvin Efendi Date: Wed, 21 Mar 2018 22:47:39 -0400 Subject: [PATCH] clean backends data before sending to Lua endpoint (#2233) --- internal/ingress/controller/nginx.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/internal/ingress/controller/nginx.go b/internal/ingress/controller/nginx.go index a4361cfba..93ca53fe3 100644 --- a/internal/ingress/controller/nginx.go +++ b/internal/ingress/controller/nginx.go @@ -763,7 +763,15 @@ func (n *NGINXController) IsDynamicallyConfigurable(pcfg *ingress.Configuration) // ConfigureDynamically JSON encodes new Backends and POSTs it to an internal HTTP endpoint // that is handled by Lua func (n *NGINXController) ConfigureDynamically(pcfg *ingress.Configuration) error { - buf, err := json.Marshal(pcfg.Backends) + backends := make([]*ingress.Backend, len(pcfg.Backends)) + + for i, backend := range pcfg.Backends { + cleanedupBackend := *backend + cleanedupBackend.Service = nil + backends[i] = &cleanedupBackend + } + + buf, err := json.Marshal(backends) if err != nil { return err }