code: func (volumeAttachmentStrategy) PrepareForUpdate(ctx context.Context, obj, old runtime.Object) {
  	var groupVersion schema.GroupVersion
  
  	if requestInfo, found := genericapirequest.RequestInfoFrom(ctx); found {
  		groupVersion = schema.GroupVersion{Group: requestInfo.APIGroup, Version: requestInfo.APIVersion}
  	}
  	switch groupVersion {
  	case storageapiv1beta1.SchemeGroupVersion:
  		// allow modification of Status via main resource for v1beta1
  	default:
  		newVolumeAttachment := obj.(*storage.VolumeAttachment)
  		oldVolumeAttachment := old.(*storage.VolumeAttachment)
  		newVolumeAttachment.Status = oldVolumeAttachment.Status
  		// No need to increment Generation because we don't allow updates to spec
  	}
  }
docs: // PrepareForUpdate sets the Status fields which is not allowed to be set by an end user updating a VolumeAttachment