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