code: func (s *storageLeases) UpdateLease(ip string) error {
  	key := path.Join(s.baseKey, ip)
  	return s.storage.GuaranteedUpdate(apirequest.NewDefaultContext(), key, &corev1.Endpoints{}, true, nil, func(input kruntime.Object, respMeta storage.ResponseMeta) (kruntime.Object, *uint64, error) {
  		// just make sure we've got the right IP set, and then refresh the TTL
  		existing := input.(*corev1.Endpoints)
  		existing.Subsets = []corev1.EndpointSubset{
  			{
  				Addresses: []corev1.EndpointAddress{{IP: ip}},
  			},
  		}
  
  		// leaseTime needs to be in seconds
  		leaseTime := uint64(s.leaseTime / time.Second)
  
  		// NB: GuaranteedUpdate does not perform the store operation unless
  		// something changed between load and store (not including resource
  		// version), meaning we can't refresh the TTL without actually
  		// changing a field.
  		existing.Generation++
  
  		klog.V(6).Infof("Resetting TTL on master IP %q listed in storage to %v", ip, leaseTime)
  
  		return existing, &leaseTime, nil
  	})
  }
docs: // UpdateLease resets the TTL on a master IP in storage