code: func (csrApprovalStrategy) PrepareForUpdate(ctx context.Context, obj, old runtime.Object) {
  	newCSR := obj.(*certificates.CertificateSigningRequest)
  	oldCSR := old.(*certificates.CertificateSigningRequest)
  
  	// Updating the approval should only update the conditions.
  	newCSR.Spec = oldCSR.Spec
  	oldCSR.Status.Conditions = newCSR.Status.Conditions
  	for i := range newCSR.Status.Conditions {
  		// The Conditions are an array of values, some of which may be
  		// pre-existing and unaltered by this update, so a LastUpdateTime is
  		// added only if one isn't already set.
  		if newCSR.Status.Conditions[i].LastUpdateTime.IsZero() {
  			newCSR.Status.Conditions[i].LastUpdateTime = metav1.Now()
  		}
  	}
  	newCSR.Status = oldCSR.Status
  }
docs: // PrepareForUpdate prepares the new certificate signing request by limiting
  // the data that is updated to only the conditions. Also, if there is no
  // existing LastUpdateTime on a condition, the current date/time will be set.