Encoding nested objects must support unregistered runtime.Objects

The nested object could be using a different scheme, or want to handle
runtime.Unknown.
This commit is contained in:
Clayton Coleman 2016-07-12 12:52:07 -04:00
parent e54d974a12
commit 12d7032c39
No known key found for this signature in database
GPG Key ID: 3D16906B4F1C5CB3

View File

@ -192,6 +192,9 @@ type DirectEncoder struct {
func (e DirectEncoder) Encode(obj runtime.Object, stream io.Writer) error {
gvks, _, err := e.ObjectTyper.ObjectKinds(obj)
if err != nil {
if runtime.IsNotRegisteredError(err) {
return e.Encoder.Encode(obj, stream)
}
return err
}
kind := obj.GetObjectKind()