summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy McCrae <andy.mccrae@gmail.com>2012-09-27 11:58:14 +0000
committerAndy McCrae <andy.mccrae@gmail.com>2012-09-27 12:36:53 +0000
commit3db7a943bebbda5fea07fc80813cabc436fb892b (patch)
tree066c8b358d821b63ec606fd3d6f57c92bf30f940
parent32b674b0abb338c82850fc24d39f9632c71503e6 (diff)
downloadnova-3db7a943bebbda5fea07fc80813cabc436fb892b.tar.gz
nova-3db7a943bebbda5fea07fc80813cabc436fb892b.tar.xz
nova-3db7a943bebbda5fea07fc80813cabc436fb892b.zip
Fixes error message for flavor-create duplicate ID
Fixes bug 1056918 Change-Id: I516153211504b67f6e8b8ebb138abcef4be4d73e
-rw-r--r--nova/api/openstack/compute/contrib/flavormanage.py3
-rw-r--r--nova/db/sqlalchemy/api.py2
-rw-r--r--nova/exception.py6
-rw-r--r--nova/tests/test_instance_types.py2
4 files changed, 9 insertions, 4 deletions
diff --git a/nova/api/openstack/compute/contrib/flavormanage.py b/nova/api/openstack/compute/contrib/flavormanage.py
index 69d5d6ed9..e8ac4d522 100644
--- a/nova/api/openstack/compute/contrib/flavormanage.py
+++ b/nova/api/openstack/compute/contrib/flavormanage.py
@@ -73,7 +73,8 @@ class FlavorManageController(wsgi.Controller):
root_gb, ephemeral_gb, flavorid,
swap, rxtx_factor, is_public)
req.cache_db_flavor(flavor)
- except exception.InstanceTypeExists as err:
+ except (exception.InstanceTypeExists,
+ exception.InstanceTypeIdExists) as err:
raise webob.exc.HTTPConflict(explanation=str(err))
return self._view_builder.show(req, flavor)
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 3798cade8..8ccdfd6a8 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -3869,7 +3869,7 @@ def instance_type_create(context, values):
try:
instance_type_get_by_flavor_id(context, values['flavorid'],
session)
- raise exception.InstanceTypeExists(name=values['name'])
+ raise exception.InstanceTypeIdExists(flavor_id=values['flavorid'])
except exception.FlavorNotFound:
pass
try:
diff --git a/nova/exception.py b/nova/exception.py
index 28fb1ee0a..9b9f95492 100644
--- a/nova/exception.py
+++ b/nova/exception.py
@@ -876,7 +876,11 @@ class InstanceExists(Duplicate):
class InstanceTypeExists(Duplicate):
- message = _("Instance Type %(name)s already exists.")
+ message = _("Instance Type with name %(name)s already exists.")
+
+
+class InstanceTypeIdExists(Duplicate):
+ message = _("Instance Type with ID %(flavor_id)s already exists.")
class FlavorAccessExists(Duplicate):
diff --git a/nova/tests/test_instance_types.py b/nova/tests/test_instance_types.py
index d9d2669a3..5059b155a 100644
--- a/nova/tests/test_instance_types.py
+++ b/nova/tests/test_instance_types.py
@@ -159,7 +159,7 @@ class InstanceTypeTestCase(test.TestCase):
"""Ensures that flavorid duplicates raise InstanceTypeCreateFailed"""
flavorid = 'flavor1'
instance_types.create('name one', 256, 1, 120, 200, flavorid)
- self.assertRaises(exception.InstanceTypeExists,
+ self.assertRaises(exception.InstanceTypeIdExists,
instance_types.create,
'name two', 256, 1, 120, 200, flavorid)