Common and Misc Libraries¶
Libraries common throughout Manila or just ones that haven’t yet been categorized in depth.
The manila.context
Module¶
RequestContext: context for requests that persist through all of manila.
-
class
RequestContext
(user_id, project_id, is_admin=None, read_deleted='no', roles=None, remote_address=None, timestamp=None, request_id=None, auth_token=None, overwrite=True, quota_class=None, service_catalog=None, **kwargs) Bases:
object
Security context and request information.
Represents the user taking a given action within the system.
-
elevated
(read_deleted=None, overwrite=False) Return a version of this context with admin flag set.
-
classmethod
from_dict
(values)
-
read_deleted
-
tenant
-
to_dict
()
-
update_store
()
-
user
-
-
get_admin_context
(read_deleted='no')
The manila.exception
Module¶
Manila base exception handling.
Includes decorator for re-raising Manila-type exceptions.
SHOULD include dedicated exception logging.
-
exception
AdminRequired
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotAuthorized
-
message
= u'User does not have admin privileges.'
-
-
exception
AvailabilityZoneNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Availability zone %(id)s could not be found.'
-
-
exception
BridgeDoesNotExist
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Bridge %(bridge)s does not exist.'
-
-
exception
CGSnapshotMemberNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'CG snapshot %(member_id)s could not be found.'
-
-
exception
CGSnapshotNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Consistency group snapshot %(cgsnapshot_id)s could not be found.'
-
-
exception
ConfigNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Could not find config at %(path)s.'
-
-
exception
Conflict
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
code
= 409
-
message
= u'%(err)s'
-
-
exception
ConsistencyGroupNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'ConsistencyGroup %(consistency_group_id)s could not be found.'
-
-
exception
ConvertedException
(code=400, title='', explanation='') Bases:
webob.exc.WSGIHTTPException
-
exception
EMCVnxLockRequiredException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Unable to acquire lock(s).'
-
-
exception
EMCVnxXMLAPIError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'%(err)s'
-
-
exception
Error
Bases:
exceptions.Exception
-
exception
FileNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'File %(file_path)s could not be found.'
-
-
exception
GaneshaCommandFailure
(**kw) Bases:
oslo_concurrency.processutils.ProcessExecutionError
-
exception
GlusterfsException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Unknown Gluster exception.'
-
-
exception
HDFSException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'HDFS exception occurred!'
-
-
exception
HNASBackendException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'HNAS Backend Exception: %(msg)s'
-
-
exception
HNASConnException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'HNAS Connection Exception: %(msg)s'
-
-
exception
HP3ParInvalid
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'%(err)s'
-
-
exception
HP3ParInvalidClient
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'%(err)s'
-
-
exception
HP3ParUnexpectedError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'%(err)s'
-
-
exception
HostBinaryNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Could not find binary %(binary)s on host %(host)s.'
-
-
exception
HostNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Host %(host)s could not be found.'
-
-
exception
InUse
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Resource is in use.'
-
-
exception
InstanceNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Instance %(instance_id)s could not be found.'
-
-
exception
Invalid
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
code
= 400
-
message
= u'Unacceptable parameters.'
-
-
exception
InvalidAPIVersionString
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'API Version String %(version)s is of invalid format. Must be of format MajorNum.MinorNum.'
-
-
exception
InvalidCGSnapshot
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid CGSnapshot: %(reason)s'
-
-
exception
InvalidCapacity
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid capacity: %(name)s = %(value)s.'
-
-
exception
InvalidConsistencyGroup
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid ConsistencyGroup: %(reason)s'
-
-
exception
InvalidContentType
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid content type %(content_type)s.'
-
-
exception
InvalidDriverMode
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid driver mode: %(driver_mode)s.'
-
-
exception
InvalidExtraSpec
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid extra_spec: %(reason)s.'
-
-
exception
InvalidGlobalAPIVersion
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Version %(req_ver)s is not supported by the API. Minimum is %(min_ver)s and maximum is %(max_ver)s.'
-
-
exception
InvalidHost
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid host: %(reason)s'
-
-
exception
InvalidInput
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid input received: %(reason)s.'
-
-
exception
InvalidParameterValue
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'%(err)s'
-
-
exception
InvalidQuotaValue
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Change would make usage less than 0 for the following resources: %(unders)s.'
-
-
exception
InvalidRequest
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'The request is invalid.'
-
-
exception
InvalidReservationExpiration
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid reservation expiration %(expire)s.'
-
-
exception
InvalidResults
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'The results are invalid.'
-
-
exception
InvalidShare
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid share: %(reason)s.'
-
-
exception
InvalidShareAccess
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid access_rule: %(reason)s.'
-
-
exception
InvalidShareAccessLevel
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid or unsupported share access level: %(level)s.'
-
-
exception
InvalidShareInstance
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid share instance: %(reason)s.'
-
-
exception
InvalidShareMetadata
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid metadata.'
-
-
exception
InvalidShareMetadataSize
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid metadata size.'
-
-
exception
InvalidShareServer
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Share server %(share_server_id)s is not valid.'
-
-
exception
InvalidShareSnapshot
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid share snapshot: %(reason)s.'
-
-
exception
InvalidShareType
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid share type: %(reason)s.'
-
-
exception
InvalidSqliteDB
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid Sqlite database.'
-
-
exception
InvalidUUID
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Expected a uuid but received %(uuid)s.'
-
-
exception
InvalidVolume
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Invalid volume.'
-
-
exception
MalformedRequestBody
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Malformed message body: %(reason)s.'
-
-
exception
ManageExistingShareTypeMismatch
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Manage existing share failed due to share type mismatch: %(reason)s'
-
-
exception
ManageInvalidShare
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.InvalidShare
-
message
= u'Manage existing share failed due to invalid share: %(reason)s'
-
-
exception
ManilaException
(message=None, detail_data={}, **kwargs) Bases:
exceptions.Exception
Base Manila 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
= {}
-
message
= u'An unknown exception occurred.'
-
safe
= False
-
-
exception
MigrationError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Migration error: %(reason)s.'
-
-
exception
MigrationNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Migration %(migration_id)s could not be found.'
-
-
exception
MigrationNotFoundByStatus
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.MigrationNotFound
-
message
= u'Migration not found for instance %(instance_id)s with status %(status)s.'
-
-
exception
NetAppException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Exception due to NetApp failure.'
-
-
exception
NetworkBadConfigurationException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NetworkException
-
message
= u'Bad network configuration: %(reason)s.'
-
-
exception
NetworkException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Exception due to network failure.'
-
-
exception
NoValidHost
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'No valid host was found. %(reason)s.'
-
-
exception
NotAuthorized
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
code
= 403
-
message
= u'Not authorized.'
-
-
exception
NotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
code
= 404
-
message
= u'Resource could not be found.'
-
safe
= True
-
-
exception
OverQuota
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Quota exceeded for resources: %(overs)s.'
-
-
exception
PasteAppNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u"Could not load paste app '%(name)s' from %(path)s."
-
-
exception
PolicyNotAuthorized
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotAuthorized
-
message
= u"Policy doesn't allow %(action)s to be performed."
-
-
exception
PortLimitExceeded
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Maximum number of ports exceeded.'
-
-
exception
ProjectQuotaNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Quota for project %(project_id)s could not be found.'
-
-
exception
ProjectUserQuotaNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Quota for user %(user_id)s in project %(project_id)s could not be found.'
-
-
exception
QBException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Quobyte exception occurred: %(msg)s'
-
-
exception
QBRpcException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
Quobyte backend specific exception.
-
message
= u'Quobyte JsonRpc call to backend raised an exception: %(result)s, Quobyte error code %(qbcode)s'
-
-
exception
QuotaClassNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Quota class %(class_name)s could not be found.'
-
-
exception
QuotaError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
code
= 413
-
headers
= {'Retry-After': 0}
-
message
= u'Quota exceeded: code=%(code)s.'
-
safe
= True
-
-
exception
QuotaExists
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Quota exists for project %(project_id)s, resource %(resource)s.'
-
-
exception
QuotaNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Quota could not be found.'
-
-
exception
QuotaResourceUnknown
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Unknown quota resources %(unknown)s.'
-
-
exception
QuotaUsageNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Quota usage for project %(project_id)s could not be found.'
-
-
exception
ReservationNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaNotFound
-
message
= u'Quota reservation %(uuid)s could not be found.'
-
-
exception
SSHException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Exception in SSH protocol negotiation or logic.'
-
-
exception
SSHInjectionThreat
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'SSH command injection detected: %(command)s'
-
-
exception
SchedulerHostFilterNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Scheduler host filter %(filter_name)s could not be found.'
-
-
exception
SchedulerHostWeigherNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Scheduler host weigher %(weigher_name)s could not be found.'
-
-
exception
SecurityServiceNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Security service %(security_service_id)s could not be found.'
-
-
exception
ServiceIPNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share migration failed: %(reason)s'
-
-
exception
ServiceInstanceException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Exception in service instance manager occurred.'
-
-
exception
ServiceInstanceUnavailable
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ServiceInstanceException
-
message
= u'Service instance is not available.'
-
-
exception
ServiceIsDown
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'Service %(service)s is down.'
-
-
exception
ServiceNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Service %(service_id)s could not be found.'
-
-
exception
ShareAccessExists
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share access %(access_type)s:%(access)s exists.'
-
-
exception
ShareBackendException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share backend error: %(msg)s.'
-
-
exception
ShareExtendingError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share %(share_id)s could not be extended due to error in the driver: %(reason)s'
-
-
exception
ShareIsBusy
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Deleting $(share_name) share that used.'
-
-
exception
ShareLimitExceeded
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Maximum number of shares allowed (%(allowed)d) exceeded.'
-
-
exception
ShareMetadataNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Metadata item is not found.'
-
-
exception
ShareMigrationFailed
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share migration failed: %(reason)s'
-
-
exception
ShareNetworkNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Share network %(share_network_id)s could not be found.'
-
-
exception
ShareNetworkSecurityServiceAssociationError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Failed to associate share network %(share_network_id)s and security service %(security_service_id)s: %(reason)s.'
-
-
exception
ShareNetworkSecurityServiceDissociationError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Failed to dissociate share network %(share_network_id)s and security service %(security_service_id)s: %(reason)s.'
-
-
exception
ShareNetworksLimitExceeded
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Maximum number of share-networks allowed (%(allowed)d) exceeded.'
-
-
exception
ShareServerInUse
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.InUse
-
message
= u'Share server %(share_server_id)s is in use.'
-
-
exception
ShareServerNotCreated
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share server %(share_server_id)s failed on creation.'
-
-
exception
ShareServerNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Share server %(share_server_id)s could not be found.'
-
-
exception
ShareServerNotFoundByFilters
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ShareServerNotFound
-
message
= u'Share server could not be found by filters: %(filters_description)s.'
-
-
exception
ShareShrinkingError
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share %(share_id)s could not be shrunk due to error in the driver: %(reason)s'
-
-
exception
ShareShrinkingPossibleDataLoss
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share %(share_id)s could not be shrunk due to possible data loss'
-
-
exception
ShareSizeExceedsAvailableQuota
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Requested share exceeds allowed gigabytes quota.'
-
-
exception
ShareSnapshotIsBusy
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Deleting snapshot %(snapshot_name)s that has dependent shares.'
-
-
exception
ShareSnapshotNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Snapshot %(snapshot_id)s could not be found.'
-
-
exception
ShareSnapshotNotSupported
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share %(share_name)s does not support snapshots.'
-
-
exception
ShareTypeAccessExists
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share type access for %(share_type_id)s / %(project_id)s combination already exists.'
-
-
exception
ShareTypeAccessNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Share type access not found for %(share_type_id)s / %(project_id)s combination.'
-
-
exception
ShareTypeCreateFailed
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Cannot create share_type with name %(name)s and specs %(extra_specs)s.'
-
-
exception
ShareTypeExists
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share Type %(id)s already exists.'
-
-
exception
ShareTypeExtraSpecsNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Share Type %(share_type_id)s has no extra specs with key %(extra_specs_key)s.'
-
-
exception
ShareTypeInUse
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Share Type %(share_type_id)s deletion is not allowed with shares present with the type.'
-
-
exception
ShareTypeNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Share type %(share_type_id)s could not be found.'
-
-
exception
ShareTypeNotFoundByName
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ShareTypeNotFound
-
message
= u'Share type with name %(share_type_name)s could not be found.'
-
-
exception
SnapshotLimitExceeded
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Maximum number of snapshots allowed (%(allowed)d) exceeded.'
-
-
exception
SnapshotNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.StorageResourceNotFound
-
message
= u'Snapshot %(name)s not found.'
-
-
exception
SnapshotSizeExceedsAvailableQuota
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.QuotaError
-
message
= u'Requested snapshot exceeds allowed gigabytes quota.'
-
-
exception
SnapshotUnavailable
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.StorageResourceException
-
message
= u'Snapshot %(name)s info not available.'
-
-
exception
StorageResourceException
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u'Storage resource exception.'
-
-
exception
StorageResourceNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.StorageResourceException
-
message
= u'Storage resource %(name)s not found.'
-
-
exception
UnmanageInvalidShare
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.InvalidShare
-
message
= u'Unmanage existing share failed due to invalid share: %(reason)s'
-
-
exception
VersionNotFoundForAPIMethod
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.Invalid
-
message
= u'API version %(version)s is not supported on this method.'
-
-
exception
VolumeNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Volume %(volume_id)s could not be found.'
-
-
exception
VolumeSnapshotNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NotFound
-
message
= u'Snapshot %(snapshot_id)s could not be found.'
-
-
exception
VserverNotFound
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NetAppException
-
message
= u'Vserver %(vserver)s not found.'
-
-
exception
VserverNotSpecified
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.NetAppException
-
message
= u'Vserver not specified.'
-
-
exception
WillNotSchedule
(message=None, detail_data={}, **kwargs) Bases:
manila.exception.ManilaException
-
message
= u"Host %(host)s is not up or doesn't exist."
-
The manila.test
Module¶
Base classes for our unit tests.
Allows overriding of flags for use of fakes, and some black magic for inline callbacks.
-
class
Database
(db_session, db_migrate, sql_connection, sqlite_db, sqlite_clean_db) Bases:
fixtures.fixture.Fixture
-
setUp
()
-
setup_sqlite
(db_migrate)
-
-
class
TestCase
(*args, **kwds) Bases:
oslotest.base.BaseTestCase
Test case base class for all unit tests.
-
assertDictListMatch
(L1, L2, approx_equal=False, tolerance=0.001) Assert a list of dicts are equivalent.
-
assertDictMatch
(d1, d2, approx_equal=False, tolerance=0.001) Assert two dicts are equivalent.
This is a ‘deep’ match in the sense that it handles nested dictionaries appropriately.
NOTE:
If you don’t care (or don’t know) a given value, you can specify the string DONTCARE as the value. This will cause that dict-item to be skipped.
-
assertIn
(a, b, *args, **kwargs) Python < v2.7 compatibility. Assert ‘a’ in ‘b’.
-
assertIsInstance
(a, b, *args, **kwargs) Python < v2.7 compatibility.
-
assertIsNone
(a, *args, **kwargs) Python < v2.7 compatibility.
-
assertNotIn
(a, b, *args, **kwargs) Python < v2.7 compatibility. Assert ‘a’ NOT in ‘b’.
-
assertSubDictMatch
(sub_dict, super_dict) Assert a sub_dict is subset of super_dict.
-
flags
(**kw) Override flag variables for a test.
-
mock_class
(class_name, new_val=None, **kwargs) Use python mock to mock a class
Mocks the specified objects attribute with the given value. Automatically performs ‘addCleanup’ for the mock.
-
mock_object
(obj, attr_name, new_attr=None, **kwargs) Use python mock to mock an object attribute
Mocks the specified objects attribute with the given value. Automatically performs ‘addCleanup’ for the mock.
-
setUp
() Run before each test method to initialize test environment.
-
start_service
(name, host=None, **kwargs)
-
tearDown
() Runs after each test method to tear down test environment.
-
The manila.utils
Module¶
Utilities and helper functions.
-
class
ComparableMixin
Bases:
object
-
class
IsAMatcher
(expected_value=None) Bases:
object
-
class
LazyPluggable
(pivot, **backends) Bases:
object
A pluggable backend loaded lazily based on some value.
-
class
SSHPool
(ip, port, conn_timeout, login, password=None, privatekey=None, *args, **kwargs) Bases:
eventlet.pools.Pool
A simple eventlet pool to hold ssh connections.
-
create
()
-
get
() Return an item from the pool, when one is available.
This may cause the calling greenthread to block. Check if a connection is active before returning it. For dead connections create and return a new connection.
-
remove
(ssh) Close an ssh client and remove it from free_items.
-
-
check_ssh_injection
(cmd_list)
-
cidr_to_netmask
(cidr) Convert cidr to netmask.
-
delete_if_exists
(pathname) Delete a file, but ignore file not found error.
-
ensure_tree
(path) Create a directory (and any ancestor directories required)
Parameters: path – Directory to create
-
execute
(*cmd, **kwargs) Convenience wrapper around oslo’s execute() function.
-
file_open
(*args, **kwargs) Open file
see built-in file() documentation for more details
- Note: The reason this is kept in a separate module is to easily
- be able to provide a stub module that doesn’t alter system state at all (for unit tests)
-
get_from_path
(items, path) Returns a list of items matching the specified path.
Takes an XPath-like expression e.g. prop1/prop2/prop3, and for each item in items, looks up items[prop1][prop2][prop3]. Like XPath, if any of the intermediate results are lists it will treat each list item individually. A ‘None’ in items or any child expressions will be ignored, this function will not throw because of None (anywhere) in items. The returned list will contain no None values.
-
is_eventlet_bug105
() Check if eventlet support IPv6 addresses.
See https://bitbucket.org/eventlet/eventlet/issue/105
Return type: bool
-
is_ipv6_configured
() Check if system contain IPv6 capable network interface.
Return type: bool Raises: IOError
-
is_valid_ip_address
(ip_address, ip_version)
-
monkey_patch
() Patch decorator.
If the Flags.monkey_patch set as True, this function patches a decorator for all functions in specified modules. You can set decorators for each modules using CONF.monkey_patch_modules. The format is “Module path:Decorator function”. Example: ‘manila.api.ec2.cloud:’ manila.openstack.common.notifier.api.notify_decorator’
Parameters of the decorator is as follows. (See manila.openstack.common.notifier.api.notify_decorator)
name - name of the function function - object of the function
-
read_cached_file
(filename, cache_info, reload_func=None) Read from a file if it has been modified.
Parameters: - cache_info – dictionary to hold opaque cache.
- reload_func – optional function to be called with data when file is reloaded due to a modification.
Returns: data from file
-
read_file_as_root
(file_path) Secure helper to read file as root.
-
retry
(exception, interval=1, retries=10, backoff_rate=2, wait_random=False) A wrapper around retrying library.
This decorator allows to log and to check ‘retries’ input param. Time interval between retries is calculated in the following way: interval * backoff_rate ^ previous_attempt_number
Parameters: - exception – expected exception type. When wrapped function raises an exception of this type, the function execution is retried.
- interval – param ‘interval’ is used to calculate time interval between retries: interval * backoff_rate ^ previous_attempt_number
- retries – number of retries.
- backoff_rate – param ‘backoff_rate’ is used to calculate time interval between retries: interval * backoff_rate ^ previous_attempt_number
- wait_random – boolean value to enable retry with random wait timer.
-
service_is_up
(service) Check whether a service is up based on last heartbeat.
-
tempdir
(*args, **kwds)
-
temporary_chown
(*args, **kwds) Temporarily chown a path.
Params owner_uid: UID of temporary owner (defaults to current user)
-
trycmd
(*args, **kwargs) Convenience wrapper around oslo’s trycmd() function.
-
validate_service_host
(context, host)
-
walk_class_hierarchy
(clazz, encountered=None) Walk class hierarchy, yielding most derived classes first.
The manila.wsgi
Module¶
Utility methods for working with WSGI servers.
-
class
Application
Bases:
object
Base WSGI application wrapper. Subclasses need to implement __call__.
-
classmethod
factory
(global_config, **local_config) Used for paste app factories in paste.deploy config files.
Any local configuration (that is, values under the [app:APPNAME] section of the paste config) will be passed into the __init__ method as kwargs.
A hypothetical configuration would look like:
[app:wadl] latest_version = 1.3 paste.app_factory = manila.api.fancy_api:Wadl.factorywhich would result in a call to the Wadl class as
import manila.api.fancy_api fancy_api.Wadl(latest_version=‘1.3’)You could of course re-implement the factory method in subclasses, but using the kwarg passing it shouldn’t be necessary.
-
classmethod
-
class
Debug
(application) Bases:
manila.wsgi.Middleware
Helper class for debugging a WSGI application.
Can be inserted into any WSGI application chain to get information about the request and response.
-
static
print_generator
(app_iter) Iterator that prints the contents of a wrapper string.
-
static
-
class
Loader
(config_path=None) Bases:
object
Used to load WSGI applications from paste configurations.
-
load_app
(name) Return the paste URLMap wrapped WSGI application.
Parameters: name – Name of the application to load. Returns: Paste URLMap object wrapping the requested application. Raises: manila.exception.PasteAppNotFound
-
-
class
Middleware
(application) Bases:
manila.wsgi.Application
Base WSGI middleware.
These classes require an application to be initialized that will be called next. By default the middleware will simply call its wrapped app, or you can override __call__ to customize its behavior.
-
classmethod
factory
(global_config, **local_config) Used for paste app factories in paste.deploy config files.
Any local configuration (that is, values under the [filter:APPNAME] section of the paste config) will be passed into the __init__ method as kwargs.
A hypothetical configuration would look like:
[filter:analytics] redis_host = 127.0.0.1 paste.filter_factory = manila.api.analytics:Analytics.factorywhich would result in a call to the Analytics class as
import manila.api.analytics analytics.Analytics(app_from_paste, redis_host=‘127.0.0.1’)You could of course re-implement the factory method in subclasses, but using the kwarg passing it shouldn’t be necessary.
-
process_request
(req) Called on each request.
If this returns None, the next application down the stack will be executed. If it returns a response then that response will be returned and execution will stop here.
-
process_response
(response) Do whatever you’d like to the response.
-
classmethod
-
class
Request
(environ, charset=None, unicode_errors=None, decode_param_names=None, **kw) Bases:
webob.request.Request
-
class
Router
(mapper) Bases:
object
WSGI middleware that maps incoming requests to WSGI apps.
-
class
Server
(name, app, host=None, port=None, pool_size=None, protocol=<class eventlet.wsgi.HttpProtocol>, backlog=128) Bases:
oslo_service.service.ServiceBase
Server class to manage a WSGI server, serving a WSGI application.
-
default_pool_size
= 1000
-
host
-
port
-
reset
() Reset server greenpool size to default.
Returns: None
-
start
() Start serving a WSGI application.
Returns: None Raises: manila.exception.InvalidInput
-
stop
() Stop this server.
This is not a very nice action, as currently the method by which a server is stopped is by killing its eventlet.
Returns: None
-
wait
() Block, until the server has stopped.
Waits on the server’s eventlet to finish, then returns.
Returns: None
-
Tests¶
The test_exception
Module¶
-
class
FakeNotifier
Bases:
object
Acts like the manila.openstack.common.notifier.api module.
-
ERROR
= 88
-
notify
(context, publisher, event, priority, payload)
-
-
class
ManilaExceptionResponseCode400
(*args, **kwds) Bases:
manila.test.TestCase
-
test_invalid
()
-
test_invalid_content_type
()
-
test_invalid_input
()
-
test_invalid_parameter_value
()
-
test_invalid_quota_value
()
-
test_invalid_request
()
-
test_invalid_reservation_expiration
()
-
test_invalid_results
()
-
test_invalid_share
()
-
test_invalid_share_access
()
-
test_invalid_share_metadata
()
-
test_invalid_share_metadata_size
()
-
test_invalid_share_snapshot
()
-
test_invalid_share_type
()
-
test_invalid_uuid
()
-
test_invalid_volume
()
-
-
class
ManilaExceptionResponseCode403
(*args, **kwds) Bases:
manila.test.TestCase
-
test_admin_required
()
-
test_not_authorized
()
-
test_policy_not_authorized
()
-
-
class
ManilaExceptionResponseCode404
(*args, **kwds) Bases:
manila.test.TestCase
-
test_config_not_found
()
-
test_file_not_found
()
-
test_host_binary_not_found
()
-
test_host_not_found
()
-
test_instance_not_found
()
-
test_migration_not_found
()
-
test_migration_not_found_by_status
()
-
test_not_found
()
-
test_paste_app_not_found
()
-
test_project_quota_not_found
()
-
test_quota_class_not_found
()
-
test_quota_not_found
()
-
test_quota_resource_unknown
()
-
test_quota_usage_not_found
()
-
test_reservation_not_found
()
-
test_scheduler_host_filter_not_found
()
-
test_scheduler_host_weigher_not_found
()
-
test_security_service_not_found
()
-
test_service_not_found
()
-
test_share_metadata_not_found
()
-
test_share_network_not_found
()
-
test_share_server_not_found
()
-
test_share_server_not_found_by_filters
()
-
test_share_snapshot_not_found
()
-
test_share_type_extra_specs_not_found
()
-
test_share_type_not_found
()
-
test_share_type_not_found_by_name
()
-
test_volume_not_found
()
-
test_volume_snapshot_not_found
()
-
-
class
ManilaExceptionResponseCode413
(*args, **kwds) Bases:
manila.test.TestCase
-
test_port_limit_exceeded
()
-
test_quota_error
()
-
test_share_limit_exceeded
()
-
test_share_networks_limit_exceeded
()
-
test_share_size_exceeds_available_quota
()
-
test_snapshot_limit_exceeded
()
-
-
class
ManilaExceptionTestCase
(*args, **kwds) Bases:
manila.test.TestCase
-
test_default_error_code
()
-
test_default_error_msg
()
-
test_default_error_msg_with_kwargs
()
-
test_error_code_from_kwarg
()
-
test_error_msg
()
-
test_error_msg_exception_with_kwargs
()
-
test_error_msg_is_exception_to_string
()
-
test_exception_kwargs_to_string
()
-
test_exception_multi_kwargs_to_string
()
-
test_exception_not_redundant_period_1_test_message_
()
-
test_exception_not_redundant_period_2_test_message____
()
-
test_exception_not_redundant_period_3__
()
-
test_exception_redundant_period
()
-