diff --git a/staging/src/k8s.io/apimachinery/pkg/api/testing/roundtrip/roundtrip.go b/staging/src/k8s.io/apimachinery/pkg/api/testing/roundtrip/roundtrip.go index e109e832b83..6fec930dc21 100644 --- a/staging/src/k8s.io/apimachinery/pkg/api/testing/roundtrip/roundtrip.go +++ b/staging/src/k8s.io/apimachinery/pkg/api/testing/roundtrip/roundtrip.go @@ -19,7 +19,6 @@ package roundtrip import ( "bytes" "encoding/hex" - "fmt" "math/rand" "reflect" "strings" @@ -269,11 +268,7 @@ func roundTrip(t *testing.T, scheme *runtime.Scheme, codec runtime.Codec, object original := object // deep copy the original object - copied, err := scheme.DeepCopy(object) - if err != nil { - panic(fmt.Sprintf("unable to copy: %v", err)) - } - object = copied.(runtime.Object) + object = object.DeepCopyObject() name := reflect.TypeOf(object).Elem().Name() // catch deepcopy errors early diff --git a/staging/src/k8s.io/apimachinery/pkg/runtime/embedded_test.go b/staging/src/k8s.io/apimachinery/pkg/runtime/embedded_test.go index 67995d8ce47..606e0e96ad6 100644 --- a/staging/src/k8s.io/apimachinery/pkg/runtime/embedded_test.go +++ b/staging/src/k8s.io/apimachinery/pkg/runtime/embedded_test.go @@ -243,12 +243,8 @@ func TestDeepCopyOfRuntimeObject(t *testing.T) { } t.Logf("originalRole = %v\n", string(originalData)) - copyOfOriginal, err := s.DeepCopy(original) - if err != nil { - t.Fatalf("unexpected error: %v", err) - } - - copiedData, err := runtime.Encode(codec, copyOfOriginal.(runtime.Object)) + copyOfOriginal := original.DeepCopy() + copiedData, err := runtime.Encode(codec, copyOfOriginal) if err != nil { t.Errorf("unexpected error: %v", err) } diff --git a/staging/src/k8s.io/apimachinery/pkg/runtime/scheme.go b/staging/src/k8s.io/apimachinery/pkg/runtime/scheme.go index 6c9475fa0d6..ee78705b79c 100644 --- a/staging/src/k8s.io/apimachinery/pkg/runtime/scheme.go +++ b/staging/src/k8s.io/apimachinery/pkg/runtime/scheme.go @@ -530,11 +530,7 @@ func (s *Scheme) convertToVersion(copy bool, in Object, target GroupVersioner) ( } if copy { - copied, err := s.Copy(in) - if err != nil { - return nil, err - } - in = copied + in = in.DeepCopyObject() } flags, meta := s.generateConvertMeta(in) @@ -555,11 +551,7 @@ func (s *Scheme) generateConvertMeta(in interface{}) (conversion.FieldMatchingFl // copyAndSetTargetKind performs a conditional copy before returning the object, or an error if copy was not successful. func copyAndSetTargetKind(copy bool, copier ObjectCopier, obj Object, kind schema.GroupVersionKind) (Object, error) { if copy { - copied, err := copier.Copy(obj) - if err != nil { - return nil, err - } - obj = copied + obj = obj.DeepCopyObject() } setTargetKind(obj, kind) return obj, nil diff --git a/staging/src/k8s.io/apimachinery/pkg/runtime/scheme_test.go b/staging/src/k8s.io/apimachinery/pkg/runtime/scheme_test.go index 9382dc96ac5..3e623f64217 100644 --- a/staging/src/k8s.io/apimachinery/pkg/runtime/scheme_test.go +++ b/staging/src/k8s.io/apimachinery/pkg/runtime/scheme_test.go @@ -711,7 +711,7 @@ func TestConvertToVersion(t *testing.T) { }, } for i, test := range testCases { - original, _ := test.scheme.DeepCopy(test.in) + original := test.in.DeepCopyObject() out, err := test.scheme.ConvertToVersion(test.in, test.gv) switch { case test.errFn != nil: