code: func (p *rbdProvisioner) Delete(volume *v1.PersistentVolume) error {
  	// TODO: Should we check `pv.kubernetes.io/provisioned-by` key too?
  	ann, ok := volume.Annotations[provisionerIDAnn]
  	if !ok {
  		return errors.New("identity annotation not found on PV")
  	}
  	if ann != p.identity {
  		return &controller.IgnoredError{Reason: "identity annotation on PV does not match ours"}
  	}
  
  	class, err := p.client.StorageV1beta1().StorageClasses().Get(util.GetPersistentVolumeClass(volume), metav1.GetOptions{})
  	if err != nil {
  		return err
  	}
  	opts, err := p.parseParameters(class.Parameters)
  	if err != nil {
  		return err
  	}
  	image := volume.Spec.PersistentVolumeSource.RBD.RBDImage
  	return p.rbdUtil.DeleteImage(image, opts)
  }
docs: // Delete removes the storage asset that was created by Provision represented
  // by the given PV.