// Update updates the provided resource. func (rc *ResourceClient) Update(obj *runtime.Unstructured) (*runtime.Unstructured, error) { result := new(runtime.Unstructured) if len(obj.GetName()) == 0 { return result, errors.New("object missing name") } err := rc.cl.Put(). NamespaceIfScoped(rc.ns, rc.resource.Namespaced). Resource(rc.resource.Name). Name(obj.GetName()). Body(obj). Do(). Into(result) return result, err }
// isDifferentApiVersion Returns true if obj lives in a different ApiVersion than the SwaggerSchema does. // The SwaggerSchema will not be able to process objects in different ApiVersions unless they are vendored. func (s *SwaggerSchema) isDifferentApiVersion(obj runtime.Unstructured) bool { groupVersion := obj.GetAPIVersion() return len(groupVersion) > 0 && s.api.ApiVersion != groupVersion }