summaryrefslogtreecommitdiffstats
path: root/nova/exception.py
diff options
context:
space:
mode:
authorAlex Meade <alex.meade@rackspace.com>2012-04-30 12:59:21 -0400
committerAlex Meade <alex.meade@rackspace.com>2012-05-02 13:33:24 -0400
commit718a3f057cee0b1163c40fbcbedda29bd2ef9dfe (patch)
tree6d4531db55a152c958ca3e30ff01394de512b190 /nova/exception.py
parent994bba6ae7156a565bd160fc8f0f8e8578c28d1b (diff)
Provide better quota error messages.
Refactor the handling of QuotaErrors. Fixes bug: 990015 Fixes bug: 991994 Change-Id: I722545fad3c0bdff896a8f56f6c53ba47e433b0c
Diffstat (limited to 'nova/exception.py')
-rw-r--r--nova/exception.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/nova/exception.py b/nova/exception.py
index 5fa9e0c87..e40fa0ccf 100644
--- a/nova/exception.py
+++ b/nova/exception.py
@@ -265,6 +265,10 @@ class InvalidVolume(Invalid):
message = _("Invalid volume") + ": %(reason)s"
+class InvalidMetadata(Invalid):
+ message = _("Invalid metadata") + ": %(reason)s"
+
+
class InvalidPortRange(Invalid):
message = _("Invalid port range %(from_port)s:%(to_port)s. %(msg)s")
@@ -962,6 +966,31 @@ class QuotaError(NovaException):
message = _("Quota exceeded") + ": code=%(code)s"
+class TooManyInstances(QuotaError):
+ message = _("Quota exceeded: already used %(used)d of %(allowed)d"
+ " instances")
+
+
+class VolumeSizeTooLarge(QuotaError):
+ message = _("Maximum volume size exceeded")
+
+
+class MetadataLimitExceeded(QuotaError):
+ message = _("Maximum number of metadata items exceeds %(allowed)d")
+
+
+class OnsetFileLimitExceeded(QuotaError):
+ message = _("Personality file limit exceeded")
+
+
+class OnsetFilePathLimitExceeded(QuotaError):
+ message = _("Personality file path too long")
+
+
+class OnsetFileContentLimitExceeded(QuotaError):
+ message = _("Personality file content too long")
+
+
class AggregateError(NovaException):
message = _("Aggregate %(aggregate_id)s: action '%(action)s' "
"caused an error: %(reason)s.")