From 9adcbd72fb35da109499e0461d0f99edaf604e42 Mon Sep 17 00:00:00 2001 From: David Eads Date: Fri, 13 Oct 2017 10:48:58 -0400 Subject: [PATCH] decode admission responses into a fresh object --- plugin/pkg/admission/webhook/admission.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/plugin/pkg/admission/webhook/admission.go b/plugin/pkg/admission/webhook/admission.go index efcd5341796..8cd14bb3e8b 100644 --- a/plugin/pkg/admission/webhook/admission.go +++ b/plugin/pkg/admission/webhook/admission.go @@ -242,20 +242,21 @@ func (a *GenericAdmissionWebhook) callHook(ctx context.Context, h *v1alpha1.Exte if err != nil { return &ErrCallingWebhook{WebhookName: h.Name, Reason: err} } - if err := client.Post().Context(ctx).Body(&request).Do().Into(&request); err != nil { + response := &admissionv1alpha1.AdmissionReview{} + if err := client.Post().Context(ctx).Body(&request).Do().Into(response); err != nil { return &ErrCallingWebhook{WebhookName: h.Name, Reason: err} } - if request.Status.Allowed { + if response.Status.Allowed { return nil } - if request.Status.Result == nil { + if response.Status.Result == nil { return fmt.Errorf("admission webhook %q denied the request without explanation", h.Name) } return &apierrors.StatusError{ - ErrStatus: *request.Status.Result, + ErrStatus: *response.Status.Result, } }