code: func (pm *VolumePluginMgr) FindAttachablePluginByName(name string) (AttachableVolumePlugin, error) {
  	volumePlugin, err := pm.FindPluginByName(name)
  	if err != nil {
  		return nil, err
  	}
  	if attachablePlugin, ok := volumePlugin.(AttachableVolumePlugin); ok {
  		return attachablePlugin, nil
  	}
  	return nil, nil
  }
docs: // FindAttachablePluginByName fetches an attachable volume plugin by name.
  // Unlike the other "FindPlugin" methods, this does not return error if no
  // plugin is found.  All volumes require a mounter and unmounter, but not
  // every volume will have an attacher/detacher.