Corrected error message for unsupported datastore flavors
1. Passing correct variables on raise exception 2. Updated the error message Change-Id: Ia1a302b30b1d7a269d96c41680964404128cfdc3 Closes-Bug: #1496846
This commit is contained in:
parent
87753afeb2
commit
3be5ff599e
@ -121,14 +121,14 @@ class DatastoresNotFound(NotFound):
|
||||
|
||||
class DatastoreFlavorAssociationNotFound(NotFound):
|
||||
|
||||
message = _("Datastore '%(datastore)s' version id %(version_id)s "
|
||||
"and flavor %(flavor_id)s mapping not found.")
|
||||
message = _("Flavor %(flavor_id)s is not supported for datastore "
|
||||
"%(datastore)s version %(datastore_version)s")
|
||||
|
||||
|
||||
class DatastoreFlavorAssociationAlreadyExists(TroveError):
|
||||
|
||||
message = _("Datastore '%(datastore)s' version %(datastore_version)s "
|
||||
"and flavor %(flavor_id)s mapping already exists.")
|
||||
message = _("Flavor %(flavor_id)s is already associated with "
|
||||
"datastore %(datastore)s version %(datastore_version)s")
|
||||
|
||||
|
||||
class DatastoreNoVersion(TroveError):
|
||||
|
@ -549,7 +549,9 @@ def update_datastore_version(datastore, name, manager, image_id, packages,
|
||||
|
||||
class DatastoreVersionMetadata(object):
|
||||
@classmethod
|
||||
def _datastore_version_metadata_add(cls, datastore_version_id,
|
||||
def _datastore_version_metadata_add(cls, datastore_name,
|
||||
datastore_version_name,
|
||||
datastore_version_id,
|
||||
key, value, exception_class):
|
||||
"""Create an entry in the Datastore Version Metadata table."""
|
||||
# Do we have a mapping in the db?
|
||||
@ -567,7 +569,8 @@ class DatastoreVersionMetadata(object):
|
||||
return
|
||||
else:
|
||||
raise exception_class(
|
||||
datastore_version_id=datastore_version_id,
|
||||
datastore=datastore_name,
|
||||
datastore_version=datastore_version_name,
|
||||
flavor_id=value)
|
||||
except exception.NotFound:
|
||||
pass
|
||||
@ -576,7 +579,9 @@ class DatastoreVersionMetadata(object):
|
||||
key=key, value=value)
|
||||
|
||||
@classmethod
|
||||
def _datastore_version_metadata_delete(cls, datastore_version_id,
|
||||
def _datastore_version_metadata_delete(cls, datastore_name,
|
||||
datastore_version_name,
|
||||
datastore_version_id,
|
||||
key, value, exception_class):
|
||||
try:
|
||||
db_record = DBDatastoreVersionMetadata.find_by(
|
||||
@ -587,10 +592,12 @@ class DatastoreVersionMetadata(object):
|
||||
return
|
||||
else:
|
||||
raise exception_class(
|
||||
datastore_version_id=datastore_version_id,
|
||||
datastore=datastore_name,
|
||||
datastore_version=datastore_version_name,
|
||||
flavor_id=value)
|
||||
except exception.ModelNotFoundError:
|
||||
raise exception_class(datastore_version_id=datastore_version_id,
|
||||
raise exception_class(datastore=datastore_name,
|
||||
datastore_version=datastore_version_name,
|
||||
flavor_id=value)
|
||||
|
||||
@classmethod
|
||||
@ -609,6 +616,7 @@ class DatastoreVersionMetadata(object):
|
||||
datastore_version_id = db_dsv_record.id
|
||||
for flavor_id in flavor_ids:
|
||||
cls._datastore_version_metadata_add(
|
||||
datastore_name, datastore_version_name,
|
||||
datastore_version_id, 'flavor', flavor_id,
|
||||
exception.DatastoreFlavorAssociationAlreadyExists)
|
||||
|
||||
@ -627,6 +635,7 @@ class DatastoreVersionMetadata(object):
|
||||
)
|
||||
datastore_version_id = db_dsv_record.id
|
||||
cls._datastore_version_metadata_delete(
|
||||
datastore_name, datastore_version_name,
|
||||
datastore_version_id, 'flavor', flavor_id,
|
||||
exception.DatastoreFlavorAssociationNotFound)
|
||||
|
||||
|
@ -682,7 +682,9 @@ class Instance(BuiltInstance):
|
||||
valid_flavors = tuple(f.value for f in bound_flavors)
|
||||
if flavor_id not in valid_flavors:
|
||||
raise exception.DatastoreFlavorAssociationNotFound(
|
||||
version_id=datastore_version.id, flavor_id=flavor_id)
|
||||
datastore=datastore.name,
|
||||
datastore_version=datastore_version.name,
|
||||
flavor_id=flavor_id)
|
||||
|
||||
datastore_cfg = CONF.get(datastore_version.manager)
|
||||
client = create_nova_client(context)
|
||||
|
@ -37,16 +37,21 @@ class TestDatastoreVersionMetadata(TestDatastoreBase):
|
||||
|
||||
def test_add_existing_associations(self):
|
||||
dsmetadata = datastore_models.DatastoreVersionMetadata
|
||||
self.assertRaises(exception.DatastoreFlavorAssociationAlreadyExists,
|
||||
dsmetadata.add_datastore_version_flavor_association,
|
||||
self.ds_name, self.ds_version, [self.flavor_id])
|
||||
self.assertRaisesRegexp(
|
||||
exception.DatastoreFlavorAssociationAlreadyExists,
|
||||
"Flavor %s is already associated with datastore %s version %s"
|
||||
% (self.flavor_id, self.ds_name, self.ds_version),
|
||||
dsmetadata.add_datastore_version_flavor_association,
|
||||
self.ds_name, self.ds_version, [self.flavor_id])
|
||||
|
||||
def test_delete_nonexistent_mapping(self):
|
||||
dsmeta = datastore_models.DatastoreVersionMetadata
|
||||
self.assertRaises(exception.DatastoreFlavorAssociationNotFound,
|
||||
dsmeta.delete_datastore_version_flavor_association,
|
||||
self.ds_name, self.ds_version,
|
||||
flavor_id=2)
|
||||
self.assertRaisesRegexp(
|
||||
exception.DatastoreFlavorAssociationNotFound,
|
||||
"Flavor 2 is not supported for datastore %s version %s"
|
||||
% (self.ds_name, self.ds_version),
|
||||
dsmeta.delete_datastore_version_flavor_association,
|
||||
self.ds_name, self.ds_version, flavor_id=2)
|
||||
|
||||
def test_delete_mapping(self):
|
||||
flavor_id = 2
|
||||
|
Loading…
x
Reference in New Issue
Block a user