From 9d328628dea9530de629f829faa569fd87e0ac90 Mon Sep 17 00:00:00 2001 From: Julien Danjou Date: Thu, 22 Mar 2012 16:42:05 +0100 Subject: Handle correctly QuotaError in EC2 API Without this patch, EC2 API returns UnknownError when quota is exceeded, see bug #853381 This patch fixes that by handling the exception. Now euca-run-instances returns useful information: $ euca-run-instances --instance-count 10 --instance-type m1.8gb.2cpus.diskless ami-00000012 QuotaError: Quota exceeded: code=InstanceLimitExceeded Change-Id: I1f7b381b34d2f538b7cc2d9582a40fd8bf88fbc3 Signed-off-by: Julien Danjou --- nova/api/ec2/__init__.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'nova/api') diff --git a/nova/api/ec2/__init__.py b/nova/api/ec2/__init__.py index cfa7e91be..17759015f 100644 --- a/nova/api/ec2/__init__.py +++ b/nova/api/ec2/__init__.py @@ -629,6 +629,10 @@ class Executor(wsgi.Application): LOG.debug(_('InvalidRequest raised: %s'), unicode(ex), context=context) return ec2_error(req, request_id, type(ex).__name__, unicode(ex)) + except exception.QuotaError as ex: + LOG.debug(_('QuotaError raised: %s'), unicode(ex), + context=context) + return ec2_error(req, request_id, type(ex).__name__, unicode(ex)) except exception.InvalidInstanceIDMalformed as ex: LOG.debug(_('ValidatorError raised: %s'), unicode(ex), context=context) -- cgit