From a4d17271a9900f37b3e6cfac7ec20f50a2a88235 Mon Sep 17 00:00:00 2001 From: jennybuckley Date: Mon, 11 Mar 2019 23:07:21 -0700 Subject: [PATCH] Fix int/float apply bug Kubernetes-commit: 10259c959e9f20668659f7e20251a217b51c6355 --- .../handlers/fieldmanager/internal/typeconverter.go | 7 ++++++- .../handlers/fieldmanager/internal/typeconverter_test.go | 2 -- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkg/endpoints/handlers/fieldmanager/internal/typeconverter.go b/pkg/endpoints/handlers/fieldmanager/internal/typeconverter.go index 80ac84128..e80e5634b 100644 --- a/pkg/endpoints/handlers/fieldmanager/internal/typeconverter.go +++ b/pkg/endpoints/handlers/fieldmanager/internal/typeconverter.go @@ -105,7 +105,12 @@ func (c *typeConverter) YAMLToTyped(from []byte) (typed.TypedValue, error) { return nil, fmt.Errorf("error decoding YAML: %v", err) } - return c.ObjectToTyped(unstructured) + gvk := unstructured.GetObjectKind().GroupVersionKind() + t := c.parser.Type(gvk) + if t == nil { + return nil, fmt.Errorf("no corresponding type for %v", gvk) + } + return t.FromYAML(typed.YAMLObject(string(from))) } func (c *typeConverter) TypedToObject(value typed.TypedValue) (runtime.Object, error) { diff --git a/pkg/endpoints/handlers/fieldmanager/internal/typeconverter_test.go b/pkg/endpoints/handlers/fieldmanager/internal/typeconverter_test.go index c36d68654..8e41f0796 100644 --- a/pkg/endpoints/handlers/fieldmanager/internal/typeconverter_test.go +++ b/pkg/endpoints/handlers/fieldmanager/internal/typeconverter_test.go @@ -68,7 +68,6 @@ metadata: labels: app: nginx spec: - replicas: 3 selector: matchLabels: app: nginx @@ -91,7 +90,6 @@ metadata: labels: app: nginx spec: - replicas: 3 selector: matchLabels: app: nginx