def delete(self, args): """ Delete a given volume """ parser = OptionParser(usage="volume delete <options>") parser.add_option("-n", "--name", dest="name", help="The name of the volume to delete") (options, args) = parser.parse_args(args) if not options.name: parser.print_help() return try: cloud = self._context.getCloudService() vdcs = cloud.listVirtualDatacenters() for vdc in vdcs: volume = vdc.findVolume( VirtualDiskPredicates.name(options.name)) if volume: volume.delete() return print "No volume found with name: %s" % options.name except (AbiquoException, AuthorizationException), ex: print "Error: %s" % ex.getMessage()
def find_volume(context, name): """ Find a volume given its name """ cloud = context.getCloudService() vdcs = cloud.listVirtualDatacenters() log.debug("Looking for volume: %s" % name) for vdc in vdcs: volume = vdc.findVolume(VirtualDiskPredicates.name(name)) if volume: log.debug("Found volume in virtual datacenter: %s" % vdc.getName()) return volume