openstack.block_storage.v3.volume

The Volume Class

The Volume class inherits from Resource.

class openstack.block_storage.v3.volume.Volume(_synchronized=False, connection=None, **attrs)

The base resource

Parameters
  • _synchronized (bool) – This is not intended to be used directly. See new() and existing().

  • connection (openstack.connection.Connection) – Reference to the Connection being used. Defaults to None to allow Resource objects to be used without an active Connection, such as in unit tests. Use of self._connection in Resource code should protect itself with a check for None.

id

A ID representing this volume.

name

The name of this volume.

A list of links associated with this volume. Type: list

availability_zone

The availability zone.

source_volume_id

To create a volume from an existing volume, specify the ID of the existing volume. If specified, the volume is created with same size of the source volume.

description

The volume description.

snapshot_id

To create a volume from an existing snapshot, specify the ID of the existing volume snapshot. If specified, the volume is created in same availability zone and with same size of the snapshot.

size

The size of the volume, in GBs. Type: int

image_id

The ID of the image from which you want to create the volume. Required to create a bootable volume.

volume_type

The name of the associated volume type.

is_bootable

Enables or disables the bootable attribute. You can boot an instance from a bootable volume. Type: bool

metadata

One or more metadata key and value pairs to associate with the volume.

volume_image_metadata

One or more metadata key and value pairs about image

status

One of the following values: creating, available, attaching, in-use deleting, error, error_deleting, backing-up, restoring-backup, error_restoring. For details on these statuses, see the Block Storage API documentation.

attachments

TODO(briancurtin): This is currently undocumented in the API.

created_at

The timestamp of this volume creation.

host

The volume’s current back-end.

project_id

The project ID associated with current back-end.

user_id

The user ID associated with the volume

migration_status

The status of this volume’s migration (None means that a migration is not currently in progress).

migration_id

The volume ID that this volume’s name on the back-end is based on.

replication_status

Status of replication on this volume.

extended_replication_status

Extended replication status on this volume.

consistency_group_id

ID of the consistency group.

replication_driver_data

Data set by the replication driver

is_encrypted

True if this volume is encrypted, False if not. Type: bool

extend(session, size)

Extend a volume size.

set_readonly(session, readonly)

Set volume readonly flag

retype(session, new_type, migration_policy)

Retype volume considering the migration policy