ironic.api.controllers.v1.volume_connector module

class ironic.api.controllers.v1.volume_connector.VolumeConnectorsController(*args, **kwargs)[source]

Bases: RestController

REST controller for VolumeConnectors.

delete(connector_uuid)[source]

Delete a volume connector.

Parameters:

connector_uuid – UUID of a volume connector.

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 connector does not exist

Raises:

VolumeConnectorNotFound if the volume connector cannot be found

Raises:

InvalidStateRequested If a node associated with the volume connector 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 connectors.

Parameters:
  • node – UUID or name of a node, to get only volume connectors 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.

Returns:

a list of volume connectors, or an empty list if no volume connector 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(connector_uuid, fields=None)[source]

Retrieve information about the given volume connector.

Parameters:
  • connector_uuid – UUID of a volume connector.

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

Returns:

API-serializable volume connector object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

VolumeConnectorNotFound if no volume connector exists with the specified UUID.

invalid_sort_key_list = ['extra']
patch(connector_uuid, patch)[source]

Update an existing volume connector.

Parameters:
  • connector_uuid – UUID of a volume connector.

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

Returns:

API-serializable volume connector object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

PatchError if a given patch can not be applied.

Raises:

VolumeConnectorNotFound if no volume connector exists with the specified UUID.

Raises:

InvalidParameterValue if the volume connector’s UUID is being changed

Raises:

NodeLocked if node is locked by another conductor

Raises:

NodeNotFound if the node associated with the connector does not exist

Raises:

VolumeConnectorTypeAndIdAlreadyExists if another connector already exists with the same values for type and connector_id fields

Raises:

InvalidUUID if invalid node UUID is passed in the patch.

Raises:

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

post(connector)[source]

Create a new volume connector.

Parameters:

connector – a volume connector within the request body.

Returns:

API-serializable volume connector object.

Raises:

OperationNotPermitted if accessed with specifying a parent node.

Raises:

VolumeConnectorTypeAndIdAlreadyExists if a volume connector already exists with the same type and connector_id

Raises:

VolumeConnectorAlreadyExists if a volume connector with the same UUID already exists