Fake ObjectReaction should handle PartialObjectMetadata special

When a client requests a PartialObjectMetadata returned from the
ObjectReaction type, if the object has a GVK set use that instead
of what the schema returns, since the majority of clients getting
partial object metadata will be doing so using the metadata client
or server side conversion.
This commit is contained in:
Clayton Coleman 2019-04-03 12:12:11 -04:00
parent 978c38d488
commit baf091e9db
No known key found for this signature in database
GPG Key ID: 3D16906B4F1C5CB3

View File

@ -318,6 +318,11 @@ func (t *tracker) Add(obj runtime.Object) error {
if err != nil {
return err
}
if partial, ok := obj.(*metav1.PartialObjectMetadata); ok && len(partial.TypeMeta.APIVersion) > 0 {
gvks = []schema.GroupVersionKind{partial.TypeMeta.GroupVersionKind()}
}
if len(gvks) == 0 {
return fmt.Errorf("no registered kinds for %v", obj)
}