ironic.api.controllers.v1.volume_target module

ironic.api.controllers.v1.volume_target module

class ironic.api.controllers.v1.volume_target.VolumeTarget(**kwargs)[source]

Bases: ironic.api.controllers.base.APIBase

API representation of a volume target.

This class enforces type checking and value constraints, and converts between the internal object model and the API representation of a volume target.

boot_index

The boot_index of volume target

created_at

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
extra

The metadata for this volume target

A list containing a self link and associated volume target links

node_uuid

The UUID of the node this volume target belongs to

properties

The properties for this volume target

classmethod sample(expand=True)[source]
sanitize(fields=None)[source]

Removes sensitive and unrequested data.

Will only keep the fields specified in the fields parameter.

Parameters:fields (list of str) – list of fields to preserve, or None to preserve them all
updated_at

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
uuid

Unique UUID for this volume target

volume_id

The volume_id for this volume target

volume_type

The volume_type of volume target

class ironic.api.controllers.v1.volume_target.VolumeTargetCollection(**kwargs)[source]

Bases: ironic.api.controllers.v1.collection.Collection

API representation of a collection of volume targets.

next

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
classmethod sample()[source]
targets

A list containing volume target objects

class ironic.api.controllers.v1.volume_target.VolumeTargetPatchType(**kw)[source]

Bases: ironic.api.controllers.v1.types.JsonPatchType

op

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
path

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
value

Complex type attribute definition.

Example:

class MyComplexType(ctypes.Base):
    optionalvalue = int
    mandatoryvalue = wsattr(int, mandatory=True)
    named_value = wsattr(int, name='named.value')

After inspection, the non-wsattr attributes will be replaced, and the above class will be equivalent to:

class MyComplexType(ctypes.Base):
    optionalvalue = wsattr(int)
    mandatoryvalue = wsattr(int, mandatory=True)
class ironic.api.controllers.v1.volume_target.VolumeTargetsController(node_ident=None)[source]

Bases: pecan.rest.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)[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.
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.