cinder.exception module

Cinder base exception handling.

Includes decorator for re-raising Cinder-type exceptions.

SHOULD include dedicated exception logging.

exception APIException(message=None, **kwargs)

Bases: CinderException

message = 'Error while requesting %(service)s API.'
exception APITimeout(message=None, **kwargs)

Bases: APIException

message = 'Timeout while requesting %(service)s API.'
exception AdminRequired(message: str | tuple | None = None, **kwargs)

Bases: NotAuthorized

message = 'User does not have admin privileges'
exception AttachmentSpecsNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Attachment %(attachment_id)s has no key %(specs_key)s.'
exception BackupDriverException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Backup driver reported an error: %(reason)s'
exception BackupInvalidCephArgs(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Invalid Ceph args provided for backup rbd operation'
exception BackupLimitExceeded(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Maximum number of backups allowed (%(allowed)d) exceeded'
exception BackupMetadataNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Backup %(backup_id)s has no metadata with key %(metadata_key)s.'
exception BackupMetadataUnsupportedVersion(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Unsupported backup metadata version requested'
exception BackupNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Backup %(backup_id)s could not be found.'
exception BackupOperationError(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'An error has occurred during backup operation'
exception BackupRBDOperationFailed(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Backup RBD operation failed'
exception BackupRestoreCancel(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Canceled backup %(back_id)s restore on volume %(vol_id)s'
exception BadHTTPResponseStatus(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Bad HTTP response status %(status)s'
exception BadResetResourceStatus(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Bad reset resource status : %(reason)s'
exception CappedVersionUnknown(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = "Unrecoverable Error: Versioned Objects in DB are capped to unknown version %(version)s. Most likely your environment contains only new services and you're trying to start an older one. Use `cinder-manage service list` to check that and upgrade this service."
exception CgSnapshotNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'CgSnapshot %(cgsnapshot_id)s could not be found.'
exception CinderAcceleratorError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Cinder accelerator %(accelerator)s encountered an error while compressing/decompressing image.\nCommand %(cmd)s execution failed.\n%(description)s\nReason: %(reason)s'
exception CinderException(message: str | tuple | None = None, **kwargs)

Bases: Exception

Base Cinder Exception

To correctly use this class, inherit from it and define a ‘message’ property. That message will get printf’d with the keyword arguments provided to the constructor.

code = 500
headers: dict = {}
message = 'An unknown exception occurred.'
safe = False
exception CleanableInUse(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = '%(type)s with id %(id)s is already being cleaned up or another host has taken over it.'
exception ClusterExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Cluster %(name)s already exists.'
exception ClusterHasHosts(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Cluster %(id)s still has hosts.'
exception ClusterNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Cluster %(id)s could not be found.'
exception ConfigNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Could not find config at %(path)s'
exception ConflictNovaUsingAttachment(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 409
message = 'Detach volume from instance %(instance_id)s using the Compute API'
safe = True
exception ConsistencyGroupNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'ConsistencyGroup %(consistencygroup_id)s could not be found.'
exception ConvertedException(code: int = 500, title: str = '', explanation: str = '')

Bases: WSGIHTTPException

exception DeviceUnavailable(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'The device in the path %(path)s is unavailable: %(reason)s'
exception DriverInitiatorDataExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = "Driver initiator data for initiator '%(initiator)s' and backend '%(namespace)s' with key '%(key)s' already exists."
exception DriverNotInitialized(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume driver not ready.'
exception Duplicate(message: str | tuple | None = None, **kwargs)

Bases: CinderException

exception EncryptedBackupOperationFailed(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Backup operation of an encrypted volume failed.'
exception EvaluatorParseException

Bases: Exception

message = 'Error during evaluator parsing: %(reason)s'
exception ExportFailure(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Failed to export for volume: %(reason)s'
exception ExtendVolumeError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Error extending volume: %(reason)s'
exception FCSanLookupServiceException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Fibre Channel SAN Lookup failure: %(reason)s'
exception FCZoneDriverException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Fibre Channel Zone operation failed: %(reason)s'
exception FailedCmdWithDump(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Operation failed with status=%(status)s. Full dump: %(data)s'
exception FileNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'File %(file_path)s could not be found.'
exception GlanceConnectionFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Connection to glance failed: %(reason)s'
exception GlanceMetadataExists(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Glance metadata cannot be updated, key %(key)s exists for volume id %(volume_id)s'
exception GlanceMetadataNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Glance metadata for volume/snapshot %(id)s cannot be found.'
exception GlanceStoreNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Store %(store_id)s not enabled in glance.'
exception GlanceStoreReadOnly(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Store %(store_id)s is read-only in glance.'
exception GroupLimitExceeded(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Maximum number of groups allowed (%(allowed)d) exceeded'
exception GroupNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Group %(group_id)s could not be found.'
exception GroupSnapshotNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'GroupSnapshot %(group_snapshot_id)s could not be found.'
exception GroupTypeAccessExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Group type access for %(group_type_id)s / %(project_id)s combination already exists.'
exception GroupTypeAccessNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Group type access not found for %(group_type_id)s / %(project_id)s combination.'
exception GroupTypeCreateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Cannot create group_type with name %(name)s and specs %(group_specs)s'
exception GroupTypeExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Group Type %(id)s already exists.'
exception GroupTypeInUse(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Group Type %(group_type_id)s deletion is not allowed with groups present with the type.'
exception GroupTypeNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Group type %(group_type_id)s could not be found.'
exception GroupTypeNotFoundByName(message: str | tuple | None = None, **kwargs)

Bases: GroupTypeNotFound

message = 'Group type with name %(group_type_name)s could not be found.'
exception GroupTypeSpecsNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Group Type %(group_type_id)s has no specs with key %(group_specs_key)s.'
exception GroupTypeUpdateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Cannot update group_type %(id)s'
exception GroupVolumeTypeMappingExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Group volume type mapping for %(group_id)s / %(volume_type_id)s combination already exists.'
exception HostNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Host %(host)s could not be found.'
exception ISCSITargetAttachFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to attach iSCSI target for volume %(volume_id)s.'
exception ISCSITargetCreateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to create iscsi target for volume %(volume_id)s.'
exception ISCSITargetDetachFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to detach iSCSI target for volume %(volume_id)s.'
exception ISCSITargetHelperCommandFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = '%(error_message)s'
exception ISCSITargetRemoveFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to remove iscsi target for volume %(volume_id)s.'
exception ImageCompressionNotAllowed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Image compression upload disallowed, but container_format is compressed'
exception ImageConversionNotAllowed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Image Conversion disallowed for image %(image_id)s: %(reason)s'
exception ImageCopyFailure(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Failed to copy image to volume: %(reason)s'
exception ImageDownloadFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to download image %(image_href)s, reason: %(reason)s'
exception ImageLimitExceeded(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Image quota exceeded'
exception ImageNotAuthorized(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Not authorized for image %(image_id)s.'
exception ImageNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Image %(image_id)s could not be found.'
exception ImageSignatureVerificationException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to verify image signature, reason: %(reason)s.'
exception ImageTooBig(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Image %(image_id)s size exceeded available disk space: %(reason)s'
exception ImageUnacceptable(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Image %(image_id)s is unacceptable: %(reason)s'
exception Invalid(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 400
message = 'Unacceptable parameters.'
exception InvalidAPIVersionString(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'API Version String %(version)s is of invalid format. Must be of format MajorNum.MinorNum.'
exception InvalidAuthKey(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid auth key: %(reason)s'
exception InvalidAvailabilityZone(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = "Availability zone '%(az)s' is invalid."
exception InvalidBackup(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid backup: %(reason)s'
exception InvalidCgSnapshot(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid CgSnapshot: %(reason)s'
exception InvalidConfigurationValue(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Value "%(value)s" is not valid for configuration option "%(option)s"'
exception InvalidConnectorException(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = "Connector doesn't have required information: %(missing)s"
exception InvalidConsistencyGroup(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid ConsistencyGroup: %(reason)s'
exception InvalidContentType(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid content type %(content_type)s.'
exception InvalidGlobalAPIVersion(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Version %(req_ver)s is not supported by the API. Minimum is %(min_ver)s and maximum is %(max_ver)s.'
exception InvalidGroup(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid Group: %(reason)s'
exception InvalidGroupSnapshot(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid GroupSnapshot: %(reason)s'
exception InvalidGroupSnapshotStatus(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid GroupSnapshot Status: %(reason)s'
exception InvalidGroupStatus(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid Group Status: %(reason)s'
exception InvalidGroupType(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid group type: %(reason)s'
exception InvalidHost(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid host: %(reason)s'
exception InvalidImageRef(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid image href %(image_href)s.'
exception InvalidInput(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid input received: %(reason)s'
exception InvalidMetadataType(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'The type of metadata: %(metadata_type)s for volume/snapshot %(id)s is invalid.'
exception InvalidName(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = "An invalid 'name' value was provided. %(reason)s"
exception InvalidParameterValue(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = '%(err)s'
exception InvalidQoSSpecs(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid qos specs: %(reason)s'
exception InvalidQuotaValue(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Change would make usage less than 0 for the following resources: %(unders)s'
exception InvalidReplicationTarget(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid Replication Target: %(reason)s'
exception InvalidReservationExpiration(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid reservation expiration %(expire)s.'
exception InvalidResults(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'The results are invalid.'
exception InvalidSignatureImage(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Signature metadata is incomplete for image: %(image_id)s.'
exception InvalidSnapshot(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid snapshot: %(reason)s'
exception InvalidTypeAvailabilityZones(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Volume type is only supported in these availability zones: %(az)s'
exception InvalidUUID(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Expected a UUID but received %(uuid)s.'
exception InvalidVolume(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid volume: %(reason)s'
exception InvalidVolumeAttachMode(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = "Invalid attaching mode '%(mode)s' for volume %(volume_id)s."
exception InvalidVolumeMetadata(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid metadata: %(reason)s'
exception InvalidVolumeMetadataSize(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid metadata size: %(reason)s'
exception InvalidVolumeType(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Invalid volume type: %(reason)s'
exception KeyManagerError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'key manager error: %(reason)s'
exception LockCreationFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Unable to create lock. Coordination backend not started.'
exception MalformedRequestBody(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Malformed message body: %(reason)s'
exception MalformedResponse(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Malformed response to command %(cmd)s: %(reason)s'
exception ManageExistingAlreadyManaged(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Unable to manage existing volume. Volume %(volume_ref)s already managed.'
exception ManageExistingInvalidReference(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Manage existing volume failed due to invalid backend reference %(existing_ref)s: %(reason)s'
exception ManageExistingVolumeTypeMismatch(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Manage existing volume failed due to volume type mismatch: %(reason)s'
exception MessageNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Message %(message_id)s could not be found.'
exception MetadataAbsent(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'There is no metadata in DB object.'
exception MetadataCopyFailure(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Failed to copy metadata to volume: %(reason)s'
exception MetadataUpdateFailure(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Failed to update metadata for volume: %(reason)s'
exception NfsException(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSException

message = 'Unknown NFS exception'
exception NfsNoSharesMounted(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSNoSharesMounted

message = 'No mounted NFS shares found'
exception NfsNoSuitableShareFound(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSNoSuitableShareFound

message = 'There is no share which can host %(volume_size)sG'
exception NoValidBackend(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'No valid backend was found. %(reason)s'
exception NotAuthorized(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 403
message = 'Not authorized.'
exception NotFound(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 404
message = 'Resource could not be found.'
safe = True
exception NotSupportedOperation(message: str | tuple | None = None, **kwargs)

Bases: Invalid

code = 405
message = 'Operation not supported: %(operation)s.'
exception OverQuota(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Quota exceeded for resources: %(overs)s'
exception ParameterNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Could not find parameter %(param)s'
exception PolicyNotAuthorized(message: str | tuple | None = None, **kwargs)

Bases: NotAuthorized

message = "Policy doesn't allow %(action)s to be performed."
exception ProgrammingError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Programming error in Cinder: %(reason)s'
exception ProjectQuotaNotFound(message: str | tuple | None = None, **kwargs)

Bases: QuotaNotFound

message = 'Quota for project %(project_id)s could not be found.'
exception QoSSpecsAssociateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to associate qos_specs: %(specs_id)s with type %(type_id)s.'
exception QoSSpecsCreateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to create qos_specs: %(name)s with specs %(qos_specs)s.'
exception QoSSpecsDisassociateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to disassociate qos_specs: %(specs_id)s with type %(type_id)s.'
exception QoSSpecsExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'QoS Specs %(specs_id)s already exists.'
exception QoSSpecsInUse(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'QoS Specs %(specs_id)s is still associated with entities.'
exception QoSSpecsKeyNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'QoS spec %(specs_id)s has no spec with key %(specs_key)s.'
exception QoSSpecsNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'No such QoS spec %(specs_id)s.'
exception QoSSpecsUpdateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to update qos_specs: %(specs_id)s with specs %(qos_specs)s.'
exception QuotaClassNotFound(message: str | tuple | None = None, **kwargs)

Bases: QuotaNotFound

message = 'Quota class %(class_name)s could not be found.'
exception QuotaError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 413
headers: dict = {'Retry-After': '0'}
message = 'Quota exceeded: code=%(code)s'
safe = True
exception QuotaNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Quota could not be found'
exception QuotaResourceUnknown(message: str | tuple | None = None, **kwargs)

Bases: QuotaNotFound

message = 'Unknown quota resources %(unknown)s.'
exception QuotaUsageNotFound(message: str | tuple | None = None, **kwargs)

Bases: QuotaNotFound

message = 'Quota usage for project %(project_id)s could not be found.'
exception RPCTimeout(message: str | tuple | None = None, **kwargs)

Bases: CinderException

code = 502
message = 'Timeout while requesting capabilities from backend %(service)s.'
exception RekeyNotSupported(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Rekey not supported.'
exception RemoteFSConcurrentRequest(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSException

message = 'A concurrent, possibly contradictory, request has been made.'
exception RemoteFSException(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Unknown RemoteFS exception'
exception RemoteFSInvalidBackingFile(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'File %(path)s has invalid backing file %(backing_file)s.'
exception RemoteFSNoSharesMounted(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSException

message = 'No mounted shares found'
exception RemoteFSNoSuitableShareFound(message: str | tuple | None = None, **kwargs)

Bases: RemoteFSException

message = 'There is no share which can host %(volume_size)sG'
exception RemoveExportException(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Failed to remove export for volume %(volume)s: %(reason)s'
exception ReplicationError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume %(volume_id)s replication error: %(reason)s'
exception ReplicationGroupError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Group %(group_id)s replication error: %(reason)s.'
exception RequirementMissing(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Requirement %(req)s is not installed.'
exception SSHInjectionThreat(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'SSH command injection detected: %(command)s'
exception SchedulerHostFilterNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Scheduler Host Filter %(filter_name)s could not be found.'
exception SchedulerHostWeigherNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Scheduler Host Weigher %(weigher_name)s could not be found.'
exception ServerNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Instance %(uuid)s could not be found.'
exception ServiceNotFound(message=None, **kwargs)

Bases: NotFound

exception ServiceTooOld(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Service is too old to fulfil this request.'
exception ServiceUnavailable(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Service is unavailable at this time.'
exception ServiceUserTokenNoAuth(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'The [service_user] send_service_user_token option was requested, but no service auth could be loaded. Please check the [service_user] configuration section.'
exception SnapshotIsBusy(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'deleting snapshot %(snapshot_name)s that has dependent volumes'
exception SnapshotLimitExceeded(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Maximum number of snapshots allowed (%(allowed)d) exceeded'
exception SnapshotLimitReached(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Exceeded the configured limit of %(set_limit)s snapshots per volume.'
exception SnapshotMetadataNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Snapshot %(snapshot_id)s has no metadata with key %(metadata_key)s.'
exception SnapshotNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Snapshot %(snapshot_id)s could not be found.'
exception SnapshotUnavailable(message: str | tuple | None = None, **kwargs)

Bases: VolumeBackendAPIException

message = 'The snapshot is unavailable: %(data)s'
exception SwiftConnectionFailed(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Connection to swift failed: %(reason)s'
exception TargetUpdateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to update target for volume %(volume_id)s.'
exception TransferNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Transfer %(transfer_id)s could not be found.'
exception UnableToFailOver(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Unable to failover to replication target: %(reason)s).'
exception UnavailableDuringUpgrade(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Cannot perform %(action)s during system upgrade.'
exception UnexpectedOverQuota(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Unexpected over quota on %(name)s.'
exception UnknownCmd(message: str | tuple | None = None, **kwargs)

Bases: VolumeDriverException

message = 'Unknown or unsupported command %(cmd)s'
exception ValidationError(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = '%(detail)s'
exception VersionNotFoundForAPIMethod(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'API version %(version)s is not supported on this method.'
exception VolumeAttached(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Volume %(volume_id)s is still attached, detach volume first.'
exception VolumeAttachmentNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume attachment could not be found with filter: %(filter)s.'
exception VolumeBackendAPIException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Bad or unexpected response from the storage volume backend API: %(data)s'
exception VolumeBackupSizeExceedsAvailableQuota(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Requested backup exceeds allowed Backup gigabytes quota. Requested %(requested)sG, quota is %(quota)sG and %(consumed)sG has been consumed.'
exception VolumeDeviceNotFound(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume device not found at %(device)s.'
exception VolumeDriverException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume driver reported an error: %(message)s'
exception VolumeGroupCreationFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Failed to create Volume Group: %(vg_name)s'
exception VolumeGroupNotFound(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Unable to find Volume Group: %(vg_name)s'
exception VolumeIsBusy(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'deleting volume %(volume_name)s that has snapshot'
exception VolumeLimitExceeded(message=None, **kwargs)

Bases: QuotaError

message = "Maximum number of volumes allowed (%(allowed)d) exceeded for quota '%(name)s'."
exception VolumeMetadataBackupExists(message: str | tuple | None = None, **kwargs)

Bases: BackupDriverException

message = 'Metadata backup already exists for this volume'
exception VolumeMetadataNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume %(volume_id)s has no metadata with key %(metadata_key)s.'
exception VolumeMigrationFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume migration failed: %(reason)s'
exception VolumeNotDeactivated(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume %(name)s was not deactivated in time.'
exception VolumeNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume %(volume_id)s could not be found.'
exception VolumeSizeExceedsAvailableQuota(message=None, **kwargs)

Bases: QuotaError

message = 'Requested volume or snapshot exceeds allowed %(name)s quota. Requested %(requested)sG, quota is %(quota)sG and %(consumed)sG has been consumed.'
exception VolumeSizeExceedsLimit(message: str | tuple | None = None, **kwargs)

Bases: QuotaError

message = 'Requested volume size %(size)dG is larger than maximum allowed limit %(limit)dG.'
exception VolumeSnapshotNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'No snapshots found for volume %(volume_id)s.'
exception VolumeTypeAccessExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Volume type access for %(volume_type_id)s / %(project_id)s combination already exists.'
exception VolumeTypeAccessNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume type access not found for %(volume_type_id)s / %(project_id)s combination.'
exception VolumeTypeCreateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Cannot create volume_type with name %(name)s and specs %(extra_specs)s'
exception VolumeTypeDefaultDeletionError(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'The volume type %(volume_type_id)s is a default volume type and cannot be deleted.'
exception VolumeTypeDefaultMisconfiguredError(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'The request cannot be fulfilled as the default volume type %(volume_type_name)s cannot be found.'
exception VolumeTypeDeletionError(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'The volume type %(volume_type_id)s is the only currently defined volume type and cannot be deleted.'
exception VolumeTypeEncryptionExists(message: str | tuple | None = None, **kwargs)

Bases: Invalid

message = 'Volume type encryption for type %(type_id)s already exists.'
exception VolumeTypeEncryptionNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume type encryption for type %(type_id)s does not exist.'
exception VolumeTypeExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Volume Type %(id)s already exists.'
exception VolumeTypeExtraSpecsNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume Type %(volume_type_id)s has no extra specs with key %(extra_specs_key)s.'
exception VolumeTypeInUse(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Volume Type %(volume_type_id)s deletion is not allowed with volumes present with the type.'
exception VolumeTypeNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Volume type %(volume_type_id)s could not be found.'
exception VolumeTypeNotFoundByName(message: str | tuple | None = None, **kwargs)

Bases: VolumeTypeNotFound

message = 'Volume type with name %(volume_type_name)s could not be found.'
exception VolumeTypeProjectDefaultNotFound(message: str | tuple | None = None, **kwargs)

Bases: NotFound

message = 'Default type for project %(project_id)s not found.'
exception VolumeTypeUpdateFailed(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Cannot update volume_type %(id)s'
exception WorkerExists(message: str | tuple | None = None, **kwargs)

Bases: Duplicate

message = 'Worker for %(type)s %(id)s already exists.'
exception WorkerNotFound(message=None, **kwargs)

Bases: NotFound

message = 'Worker with %s could not be found.'
exception ZoneManagerException(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Fibre Channel connection control failure: %(reason)s'
exception ZoneManagerNotInitialized(message: str | tuple | None = None, **kwargs)

Bases: CinderException

message = 'Fibre Channel Zone Manager not initialized'