The cinder.volume.drivers.coprhd.helpers.volume Module

The cinder.volume.drivers.coprhd.helpers.volume Module

class Volume(ipaddr, port)

Bases: cinder.volume.drivers.coprhd.helpers.commoncoprhdapi.CoprHDResource

BLOCK = 'block'
CG = 'consistency-groups'
SNAPSHOTS = 'snapshots'
URI_BULK_DELETE = '/block/volumes/deactivate'
URI_CG_CLONE = '/block/consistency-groups/{0}/protection/full-copies'
URI_CG_CLONE_DETACH = '/block/consistency-groups/{0}/protection/full-copies/{1}/detach'
URI_DEACTIVATE = '/block/volumes/{0}/deactivate'
URI_EXPAND = '/block/volumes/{0}/expand'
URI_SEARCH_VOLUMES = '/block/volumes/search?project={0}'
URI_SEARCH_VOLUMES_BY_TAG = '/block/volumes/search?tag={0}'
URI_SNAPSHOT_PROTECTION_FULLCOPIES = '/block/snapshots/{0}/protection/full-copies'
URI_TAG_VOLUME = '/block/volumes/{0}/tags'
URI_VOLUME = '/block/volumes/{0}'
URI_VOLUMES = '/block/volumes'
URI_VOLUME_CHANGE_VPOOL = '/block/volumes/vpool-change'
URI_VOLUME_CLONE_DETACH = '/block/full-copies/{0}/detach'
URI_VOLUME_EXPORTS = '/block/volumes/{0}/exports'
URI_VOLUME_PROTECTION_FULLCOPIES = '/block/volumes/{0}/protection/full-copies'
VOLUMES = 'volumes'
check_for_sync(result, sync, synctimeout=0)
clone(new_vol_name, resource_uri, sync, synctimeout=0)

Makes REST API call to clone volume.

Parameters:
  • new_vol_name – name of volume
  • resource_uri – uri of source volume
  • sync – synchronous request
  • synctimeout – Query for task status for ‘synctimeout’ secs. If the task doesn’t complete in synctimeout secs, an exception is thrown
Returns:

Created task details in JSON response payload

create(project_name, label, size, varray, vpool, sync, consistencygroup, synctimeout=0)

Makes REST API call to create volume under a project.

Parameters:
  • project_name – name of the project under which the volume will be created
  • label – name of volume
  • size – size of volume
  • varray – name of varray
  • vpool – name of vpool
  • sync – synchronous request
  • consistencygroup – To create volume under a consistencygroup
  • synctimeout – Query for task status for ‘synctimeout’ secs. If the task doesn’t complete in synctimeout secs, an exception is thrown
Returns:

Created task details in JSON response payload

delete(full_project_name, name, sync=False, force_delete=False, coprhdonly=False, synctimeout=0)

Deletes a volume based on volume name.

Parameters:
  • full_project_name – project name
  • name – name of volume to be deleted
  • sync – synchronous request
  • force_delete – if true, it will force the delete of internal volumes that have the SUPPORTS_FORCE flag
  • coprhdonly – to delete volumes from coprHD only
  • synctimeout – Query for task status for ‘synctimeout’ secs. If the task doesn’t complete in synctimeout secs, an exception is thrown
delete_by_uri(uri, sync=False, force_delete=False, coprhdonly=False, synctimeout=0)

Deletes a volume based on volume uri.

expand(full_project_name, volume_name, new_size, sync=False, synctimeout=0)
get_exports_by_uri(uri)

Makes REST API call to get exports info of a volume.

Parameters:uri – URI of the volume
Returns:Exports details in JSON response payload
get_storageAttributes(volume_name, cg_name, snapshot_name=None)
is_volume_detachable(full_project_name, name)
list_volumes(project)

Makes REST API call to list volumes under a project.

Parameters:project – name of project
Returns:List of volumes uuids in JSON response payload
search_volumes(project_name)
show(full_project_name, name)

Retrieves volume details based on volume name.

Parameters:
  • full_project_name – project path of the volume
  • name – name of the volume. If the volume is under a project, then full XPath needs to be specified. Example: If VOL1 is a volume under project PROJ1, then the name of volume is PROJ1/VOL1
Returns:

Volume details in JSON response payload

show_by_uri(uri)

Makes REST API call and retrieves volume details based on UUID.

Parameters:uri – UUID of volume
Returns:Volume details in JSON response payload
storage_resource_query(storageres_type, volume_name, cg_name, snapshot_name, project, tenant)
update(prefix_path, name, vpool)

Makes REST API call to update a volume information.

Parameters:
  • name – name of the volume to be updated
  • vpool – name of vpool
Returns:

Created task details in JSON response payload

volume_clone_detach(resource_uri, full_project_name, name, sync, synctimeout=0)
volume_query(full_project_name, volume_name)

Makes REST API call to query the volume by name.

Parameters:
  • volume_name – name of volume
  • full_project_name – Full project path
Returns:

Volume details in JSON response payload

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.