ironic.objects.volume_target module¶
- class ironic.objects.volume_target.VolumeTarget(context=None, **kwargs)[source]¶
Bases:
IronicObject
,VersionedObjectDictCompat
- VERSION = '1.0'¶
- property boot_index¶
- create(context=None)[source]¶
Create a VolumeTarget record in the DB.
- Parameters:
context – security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: VolumeTarget(context).
- 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
- property created_at¶
- dbapi = <oslo_db.api.DBAPI object>¶
- destroy(context=None)[source]¶
Delete the VolumeTarget from the DB.
- Parameters:
context – security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: VolumeTarget(context).
- Raises:
VolumeTargetNotFound if the volume target cannot be found
- property extra¶
- fields = {'boot_index': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'extra': FlexibleDict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'node_id': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'properties': FlexibleDict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'uuid': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'volume_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'volume_type': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}¶
- classmethod get(context, ident)[source]¶
Find a volume target based on its ID or UUID.
- Parameters:
context – security context
ident – the database primary key ID or the UUID of a volume target
- Returns:
a
VolumeTarget
object- Raises:
InvalidIdentity if ident is neither an integer ID nor a UUID
- Raises:
VolumeTargetNotFound if no volume target with this ident exists
- classmethod get_by_id(context, db_id)[source]¶
Find a volume target based on its database ID.
- Parameters:
cls – the
VolumeTarget
context – security context
db_id – the database primary key (integer) ID of a volume target
- Returns:
a
VolumeTarget
object- Raises:
VolumeTargetNotFound if no volume target with this ID exists
- classmethod get_by_uuid(context, uuid)[source]¶
Find a volume target based on its UUID.
- Parameters:
cls – the
VolumeTarget
context – security context
uuid – the UUID of a volume target
- Returns:
a
VolumeTarget
object- Raises:
VolumeTargetNotFound if no volume target with this UUID exists
- property id¶
- classmethod list(context, limit=None, marker=None, sort_key=None, sort_dir=None, project=None)[source]¶
Return a list of VolumeTarget objects.
- Parameters:
context – security context
limit – maximum number of resources to return in a single result
marker – pagination marker for large data sets
sort_key – column to sort results by
sort_dir – direction to sort. “asc” or “desc”.
project – The associated node project to search with.
- Returns:
a list of
VolumeConnector
objects- Returns:
a list of
VolumeTarget
objects- Raises:
InvalidParameterValue if sort_key does not exist
- classmethod list_by_node_id(context, node_id, limit=None, marker=None, sort_key=None, sort_dir=None, project=None)[source]¶
Return a list of VolumeTarget objects related to a given node ID.
- Parameters:
context – security context
node_id – the integer ID of the node
limit – maximum number of resources to return in a single result
marker – pagination marker for large data sets
sort_key – column to sort results by
sort_dir – direction to sort. “asc” or “desc”.
project – The associated node project to search with.
- Returns:
a list of
VolumeConnector
objects- Returns:
a list of
VolumeTarget
objects- Raises:
InvalidParameterValue if sort_key does not exist
- classmethod list_by_volume_id(context, volume_id, limit=None, marker=None, sort_key=None, sort_dir=None, project=None)[source]¶
Return a list of VolumeTarget objects related to a given volume ID.
- Parameters:
context – security context
volume_id – the UUID of the volume
limit – maximum number of volume targets to return in a single result
marker – pagination marker for large data sets
sort_key – column to sort results by
sort_dir – direction to sort. “asc” or “desc”.
- Returns:
a list of
VolumeTarget
objects- Raises:
InvalidParameterValue if sort_key does not exist
- property node_id¶
- property properties¶
- refresh(context=None)[source]¶
Loads updates for this VolumeTarget.
Load a volume target with the same UUID from the database and check for updated attributes. If there are any updates, they are applied from the loaded volume target, column by column.
- Parameters:
context – security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: VolumeTarget(context).
- Raises:
VolumeTargetNotFound if the volume target cannot be found
- save(context=None)[source]¶
Save updates to this VolumeTarget.
Updates will be made column by column based on the result of self.do_version_changes_for_db().
- Parameters:
context – security context. NOTE: This should only be used internally by the indirection_api. Unfortunately, RPC requires context as the first argument, even though we don’t use it. A context should be set when instantiating the object, e.g.: VolumeTarget(context).
- Raises:
InvalidParameterValue if the UUID is being changed
- Raises:
VolumeTargetBootIndexAlreadyExists if a volume target already exists with the same node ID and boot index values
- Raises:
VolumeTargetNotFound if the volume target cannot be found
- property updated_at¶
- property uuid¶
- property volume_id¶
- property volume_type¶
- class ironic.objects.volume_target.VolumeTargetCRUDNotification(context=None, **kwargs)[source]¶
Bases:
NotificationBase
Notification emitted at CRUD of a volume target.
- VERSION = '1.0'¶
- property created_at¶
- property event_type¶
- fields = {'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'event_type': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'level': NotificationLevel(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False,valid_values=('debug', 'info', 'warning', 'error', 'critical')), 'payload': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'publisher': Object(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}¶
- property level¶
- property payload¶
- property publisher¶
- property updated_at¶
- class ironic.objects.volume_target.VolumeTargetCRUDPayload(target, node_uuid)[source]¶
Bases:
NotificationPayloadBase
- SCHEMA = {'boot_index': ('target', 'boot_index'), 'created_at': ('target', 'created_at'), 'extra': ('target', 'extra'), 'properties': ('target', 'properties'), 'updated_at': ('target', 'updated_at'), 'uuid': ('target', 'uuid'), 'volume_id': ('target', 'volume_id'), 'volume_type': ('target', 'volume_type')}¶
- VERSION = '1.0'¶
- property boot_index¶
- property created_at¶
- property extra¶
- fields = {'boot_index': Integer(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'created_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'extra': FlexibleDict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'node_uuid': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'properties': FlexibleDict(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'updated_at': DateTime(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'uuid': UUID(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=False), 'volume_id': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True), 'volume_type': String(default=<class 'oslo_versionedobjects.fields.UnspecifiedDefault'>,nullable=True)}¶
- property node_uuid¶
- property properties¶
- property updated_at¶
- property uuid¶
- property volume_id¶
- property volume_type¶