ironic.api.controllers.v1.volume_target module

ironic.api.controllers.v1.volume_target module

class ironic.api.controllers.v1.volume_target.VolumeTargetsController(*args, **kwargs)[source]

Bases: RestController

REST controller for VolumeTargets.

delete(target_uuid)[source]

Delete a volume target.

Parameters:

target_uuid – UUID of a volume target.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

NodeLocked if node is locked by another conductor

Raises:

NodeNotFound if the node associated with the target does not exist

Raises:

VolumeTargetNotFound if the volume target cannot be found

Raises:

InvalidStateRequested If a node associated with the volume target is not powered off.

get_all(node=None, marker=None, limit=None, sort_key='id', sort_dir='asc', fields=None, detail=None, project=None)[source]

Retrieve a list of volume targets.

Parameters:
  • node – UUID or name of a node, to get only volume targets for that node.

  • marker – pagination marker for large data sets.

  • limit – maximum number of resources to return in a single result. This value cannot be larger than the value of max_limit in the [api] section of the ironic configuration, or only max_limit resources will be returned.

  • sort_key – column to sort results by. Default: id.

  • sort_dir – direction to sort. “asc” or “desc”. Default: “asc”.

  • fields – Optional, a list with a specified set of fields of the resource to be returned.

  • detail – Optional, whether to retrieve with detail.

  • project – Optional, an associated node project (owner, or lessee) to filter the query upon.

Returns:

a list of volume targets, or an empty list if no volume target is found.

Raises:

InvalidParameterValue if sort_key does not exist

Raises:

InvalidParameterValue if sort key is invalid for sorting.

Raises:

InvalidParameterValue if both fields and detail are specified.

get_one(target_uuid, fields=None)[source]

Retrieve information about the given volume target.

Parameters:
  • target_uuid – UUID of a volume target.

  • fields – Optional, a list with a specified set of fields of the resource to be returned.

Returns:

API-serializable volume target object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

VolumeTargetNotFound if no volume target with this UUID exists

invalid_sort_key_list = ['extra', 'properties']
patch(target_uuid, patch)[source]

Update an existing volume target.

Parameters:
  • target_uuid – UUID of a volume target.

  • patch – a json PATCH document to apply to this volume target.

Returns:

API-serializable volume target object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

PatchError if a given patch can not be applied.

Raises:

InvalidParameterValue if the volume target’s UUID is being changed

Raises:

NodeLocked if the node is already locked

Raises:

NodeNotFound if the node associated with the volume target does not exist

Raises:

VolumeTargetNotFound if the volume target cannot be found

Raises:

VolumeTargetBootIndexAlreadyExists if a volume target already exists with the same node ID and boot index values

Raises:

InvalidUUID if invalid node UUID is passed in the patch.

Raises:

InvalidStateRequested If a node associated with the volume target is not powered off.

post(target)[source]

Create a new volume target.

Parameters:

target – a volume target within the request body.

Returns:

API-serializable volume target object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

VolumeTargetBootIndexAlreadyExists if a volume target already exists with the same node ID and boot index

Raises:

VolumeTargetAlreadyExists if a volume target with the same UUID exists

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.