From d721df998d638e79bbb0d74ff4d807ffb8e44f26 Mon Sep 17 00:00:00 2001 From: Soam Vasani Date: Tue, 20 Dec 2016 14:16:33 -0800 Subject: [PATCH] Fix object-type header passed to event handlers --- kubewatcher/webhookPublisher.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/kubewatcher/webhookPublisher.go b/kubewatcher/webhookPublisher.go index 1440162e..91dbb2d8 100644 --- a/kubewatcher/webhookPublisher.go +++ b/kubewatcher/webhookPublisher.go @@ -98,13 +98,14 @@ func (p *WebhookPublisher) makeHttpRequest(r *publishRequest) { // Event and object type aren't in the serialized object req.Header.Add("Content-Type", "application/json") req.Header.Add("X-Kubernetes-Event-Type", string(r.watchEvent.Type)) - req.Header.Add("X-Kubernetes-Object-Type", reflect.TypeOf(r.watchEvent.Object).Name()) + req.Header.Add("X-Kubernetes-Object-Type", reflect.TypeOf(r.watchEvent.Object).Elem().Name()) // Make the request resp, err := http.DefaultClient.Do(req) + + // All done if the request succeeded with 200 OK. if err == nil && resp.StatusCode == 200 { resp.Body.Close() - // all done. return } @@ -120,7 +121,7 @@ func (p *WebhookPublisher) makeHttpRequest(r *publishRequest) { } } - // Schedule a retry, or give up + // Schedule a retry, or give up if out of retries r.retries-- if r.retries > 0 { r.retryDelay *= time.Duration(2)