[placement] Unregister the ResourceProvider object
Unregister the ResourceProvider object because we do not need RPC and versioning for the objects in nova.objects.resource_provider. There are two primary changes here: * unregistering the ResourceProvider class * where objects.ResourceProvider is used, point directly to the nova.objects.resource_provider package instead Partially-Implements: bp placement-deregister-objects Change-Id: I564a4a10c9f07883025df70fecb1a59d547ef7ed
This commit is contained in:
parent
fda760e94f
commit
efafd919ef
|
@ -17,7 +17,7 @@ from oslo_utils import encodeutils
|
|||
from nova.api.openstack.placement import microversion
|
||||
from nova.api.openstack.placement import util
|
||||
from nova.api.openstack.placement import wsgi_wrapper
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
|
||||
PUT_AGGREGATES_SCHEMA = {
|
||||
|
@ -55,7 +55,7 @@ def get_aggregates(req):
|
|||
microversion.raise_http_status_code_if_not_version(req, 404, (1, 1))
|
||||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
aggregate_uuids = resource_provider.get_aggregates()
|
||||
|
||||
|
@ -68,7 +68,7 @@ def set_aggregates(req):
|
|||
microversion.raise_http_status_code_if_not_version(req, 404, (1, 1))
|
||||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
aggregate_uuids = util.extract_json(req.body, PUT_AGGREGATES_SCHEMA)
|
||||
resource_provider.set_aggregates(aggregate_uuids)
|
||||
|
|
|
@ -24,7 +24,6 @@ from nova.api.openstack.placement import util
|
|||
from nova.api.openstack.placement import wsgi_wrapper
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
|
||||
|
@ -193,7 +192,7 @@ def list_for_resource_provider(req):
|
|||
# confirm existence of resource provider so we get a reasonable
|
||||
# 404 instead of empty list
|
||||
try:
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
except exception.NotFound as exc:
|
||||
raise webob.exc.HTTPNotFound(
|
||||
|
@ -226,7 +225,7 @@ def _set_allocations(req, schema):
|
|||
resource_provider_uuid = allocation['resource_provider']['uuid']
|
||||
|
||||
try:
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, resource_provider_uuid)
|
||||
except exception.NotFound:
|
||||
raise webob.exc.HTTPBadRequest(
|
||||
|
|
|
@ -24,7 +24,6 @@ from nova.api.openstack.placement import wsgi_wrapper
|
|||
from nova import db
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
RESOURCE_CLASS_IDENTIFIER = "^[A-Z0-9_]+$"
|
||||
|
@ -214,7 +213,7 @@ def create_inventory(req):
|
|||
"""
|
||||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
data = _extract_inventory(req.body, POST_INVENTORY_SCHEMA)
|
||||
resource_class = data.pop('resource_class')
|
||||
|
@ -256,7 +255,7 @@ def delete_inventory(req):
|
|||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_class = util.wsgi_path_item(req.environ, 'resource_class')
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
try:
|
||||
resource_provider.delete_inventory(resource_class)
|
||||
|
@ -287,7 +286,7 @@ def get_inventories(req):
|
|||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
try:
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
except exception.NotFound as exc:
|
||||
raise webob.exc.HTTPNotFound(
|
||||
|
@ -312,7 +311,7 @@ def get_inventory(req):
|
|||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_class = util.wsgi_path_item(req.environ, 'resource_class')
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
inventory = rp_obj.InventoryList.get_all_by_resource_provider_uuid(
|
||||
context, resource_provider.uuid).find(resource_class)
|
||||
|
@ -343,7 +342,7 @@ def set_inventories(req):
|
|||
"""
|
||||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
data = _extract_inventories(req.body, PUT_INVENTORY_SCHEMA)
|
||||
|
@ -397,7 +396,7 @@ def delete_inventories(req):
|
|||
microversion.raise_http_status_code_if_not_version(req, 405, (1, 5))
|
||||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
inventories = rp_obj.InventoryList(objects=[])
|
||||
|
@ -438,7 +437,7 @@ def update_inventory(req):
|
|||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
resource_class = util.wsgi_path_item(req.environ, 'resource_class')
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
data = _extract_inventory(req.body, BASE_INVENTORY_SCHEMA)
|
||||
|
|
|
@ -24,7 +24,6 @@ from nova.api.openstack.placement import util
|
|||
from nova.api.openstack.placement import wsgi_wrapper
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
|
||||
|
@ -127,7 +126,7 @@ def create_resource_provider(req):
|
|||
|
||||
try:
|
||||
uuid = data.get('uuid', uuidutils.generate_uuid())
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context, name=data['name'], uuid=uuid)
|
||||
resource_provider.create()
|
||||
except db_exc.DBDuplicateEntry as exc:
|
||||
|
@ -161,7 +160,7 @@ def delete_resource_provider(req):
|
|||
context = req.environ['placement.context']
|
||||
# The containing application will catch a not found here.
|
||||
try:
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
resource_provider.destroy()
|
||||
except exception.ResourceProviderInUse as exc:
|
||||
|
@ -188,7 +187,7 @@ def get_resource_provider(req):
|
|||
# The containing application will catch a not found here.
|
||||
context = req.environ['placement.context']
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
req.response.body = encodeutils.to_utf8(jsonutils.dumps(
|
||||
|
@ -267,7 +266,7 @@ def update_resource_provider(req):
|
|||
context = req.environ['placement.context']
|
||||
|
||||
# The containing application will catch a not found here.
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
data = util.extract_json(req.body, PUT_RESOURCE_PROVIDER_SCHEMA)
|
||||
|
|
|
@ -23,7 +23,6 @@ from nova.api.openstack.placement import util
|
|||
from nova.api.openstack.placement import wsgi_wrapper
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
TRAIT = {
|
||||
|
@ -199,7 +198,7 @@ def list_traits_for_resource_provider(req):
|
|||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
response_body = _serialize_traits(resource_provider.get_traits())
|
||||
|
@ -221,7 +220,7 @@ def update_traits_for_resource_provider(req):
|
|||
data = util.extract_json(req.body, SET_TRAITS_FOR_RP_SCHEMA)
|
||||
rp_gen = data['resource_provider_generation']
|
||||
traits = data['traits']
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
|
||||
if resource_provider.generation != rp_gen:
|
||||
|
@ -255,7 +254,7 @@ def delete_traits_for_resource_provider(req):
|
|||
context = req.environ['placement.context']
|
||||
uuid = util.wsgi_path_item(req.environ, 'uuid')
|
||||
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(context, uuid)
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(context, uuid)
|
||||
try:
|
||||
resource_provider.set_traits(rp_obj.TraitList(objects=[]))
|
||||
except exception.ConcurrentUpdateDetected as e:
|
||||
|
|
|
@ -20,7 +20,6 @@ from nova.api.openstack.placement import util
|
|||
from nova.api.openstack.placement import wsgi_wrapper
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
|
||||
|
||||
|
@ -72,7 +71,7 @@ def list_usages(req):
|
|||
# It is also needed for the generation, used in the outgoing
|
||||
# representation.
|
||||
try:
|
||||
resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
context, uuid)
|
||||
except exception.NotFound as exc:
|
||||
raise webob.exc.HTTPNotFound(
|
||||
|
|
|
@ -33,7 +33,6 @@ from nova.db.sqlalchemy import api_models as models
|
|||
from nova.db.sqlalchemy import resource_class_cache as rc_cache
|
||||
from nova import exception
|
||||
from nova.i18n import _
|
||||
from nova import objects
|
||||
from nova.objects import base
|
||||
from nova.objects import fields
|
||||
|
||||
|
@ -387,14 +386,8 @@ def _set_inventory(context, rp, inv_list):
|
|||
return exceeded
|
||||
|
||||
|
||||
@base.NovaObjectRegistry.register
|
||||
@base.NovaObjectRegistry.register_if(False)
|
||||
class ResourceProvider(base.NovaObject):
|
||||
# Version 1.0: Initial version
|
||||
# Version 1.1: Add destroy()
|
||||
# Version 1.2: Add get_aggregates(), set_aggregates()
|
||||
# Version 1.3: Turn off remotable
|
||||
# Version 1.4: Add set/get_traits methods
|
||||
VERSION = '1.4'
|
||||
|
||||
fields = {
|
||||
'id': fields.IntegerField(read_only=True),
|
||||
|
@ -1296,7 +1289,7 @@ class ResourceProviderList(base.ObjectListBase, base.NovaObject):
|
|||
_ensure_rc_cache(context)
|
||||
resource_providers = cls._get_all_by_filters_from_db(context, filters)
|
||||
return base.obj_make_list(context, cls(context),
|
||||
objects.ResourceProvider, resource_providers)
|
||||
ResourceProvider, resource_providers)
|
||||
|
||||
|
||||
class _HasAResourceProvider(base.NovaObject):
|
||||
|
|
|
@ -114,7 +114,7 @@ class AllocationFixture(APIFixture):
|
|||
# Stealing from the super
|
||||
rp_name = os.environ['RP_NAME']
|
||||
rp_uuid = os.environ['RP_UUID']
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
self.context, name=rp_name, uuid=rp_uuid)
|
||||
rp.create()
|
||||
|
||||
|
@ -218,19 +218,19 @@ class SharedStorageFixture(APIFixture):
|
|||
os.environ['SS_UUID'] = ss_uuid
|
||||
os.environ['AGG_UUID'] = agg_uuid
|
||||
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.context,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid)
|
||||
cn1.create()
|
||||
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.context,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid)
|
||||
cn2.create()
|
||||
|
||||
ss = objects.ResourceProvider(
|
||||
ss = rp_obj.ResourceProvider(
|
||||
self.context,
|
||||
name='ss',
|
||||
uuid=ss_uuid)
|
||||
|
|
|
@ -19,7 +19,6 @@ import sqlalchemy as sa
|
|||
import nova
|
||||
from nova import context
|
||||
from nova import exception
|
||||
from nova import objects
|
||||
from nova.objects import fields
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
from nova import test
|
||||
|
@ -55,7 +54,7 @@ class ResourceProviderBaseCase(test.NoDBTestCase):
|
|||
|
||||
def _make_allocation(self, rp_uuid=None, inv_dict=None):
|
||||
rp_uuid = rp_uuid or uuidsentinel.allocation_resource_provider
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=rp_uuid,
|
||||
name=rp_uuid)
|
||||
|
@ -77,13 +76,13 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
"""Test resource-provider objects' lifecycles."""
|
||||
|
||||
def test_create_resource_provider_requires_uuid(self):
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context = self.ctx)
|
||||
self.assertRaises(exception.ObjectActionError,
|
||||
resource_provider.create)
|
||||
|
||||
def test_create_resource_provider(self):
|
||||
created_resource_provider = objects.ResourceProvider(
|
||||
created_resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -91,7 +90,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
created_resource_provider.create()
|
||||
self.assertIsInstance(created_resource_provider.id, int)
|
||||
|
||||
retrieved_resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
retrieved_resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
self.ctx,
|
||||
uuidsentinel.fake_resource_provider
|
||||
)
|
||||
|
@ -105,7 +104,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
self.assertEqual(0, retrieved_resource_provider.generation)
|
||||
|
||||
def test_save_resource_provider(self):
|
||||
created_resource_provider = objects.ResourceProvider(
|
||||
created_resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -113,14 +112,14 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
created_resource_provider.create()
|
||||
created_resource_provider.name = 'new-name'
|
||||
created_resource_provider.save()
|
||||
retrieved_resource_provider = objects.ResourceProvider.get_by_uuid(
|
||||
retrieved_resource_provider = rp_obj.ResourceProvider.get_by_uuid(
|
||||
self.ctx,
|
||||
uuidsentinel.fake_resource_provider
|
||||
)
|
||||
self.assertEqual('new-name', retrieved_resource_provider.name)
|
||||
|
||||
def test_destroy_resource_provider(self):
|
||||
created_resource_provider = objects.ResourceProvider(
|
||||
created_resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -128,7 +127,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
created_resource_provider.create()
|
||||
created_resource_provider.destroy()
|
||||
self.assertRaises(exception.NotFound,
|
||||
objects.ResourceProvider.get_by_uuid,
|
||||
rp_obj.ResourceProvider.get_by_uuid,
|
||||
self.ctx,
|
||||
uuidsentinel.fake_resource_provider)
|
||||
self.assertRaises(exception.NotFound,
|
||||
|
@ -140,7 +139,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
rp.destroy)
|
||||
|
||||
def test_destroy_resource_provider_destroy_inventory(self):
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -161,7 +160,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
self.assertEqual(0, len(inventories))
|
||||
|
||||
def test_create_inventory_with_uncreated_provider(self):
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.inventory_resource_provider
|
||||
)
|
||||
|
@ -174,7 +173,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
disk_inventory.create)
|
||||
|
||||
def test_create_and_update_inventory(self):
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.inventory_resource_provider,
|
||||
name='foo',
|
||||
|
@ -216,7 +215,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
"""Test attempting to set inventory to an unknown resource class raises
|
||||
an exception.
|
||||
"""
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name='compute-host',
|
||||
|
@ -243,7 +242,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
inventory record for a resource class that still has allocations
|
||||
against it.
|
||||
"""
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name='compute-host',
|
||||
|
@ -295,9 +294,9 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
|
||||
@mock.patch('nova.objects.resource_provider.LOG')
|
||||
def test_set_inventory_over_capacity(self, mock_log):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp.create()
|
||||
|
||||
disk_inv = rp_obj.Inventory(
|
||||
|
@ -342,9 +341,9 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
mock.ANY, {'uuid': rp.uuid, 'resource': 'DISK_GB'})
|
||||
|
||||
def test_provider_modify_inventory(self):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp.create()
|
||||
saved_generation = rp.generation
|
||||
|
||||
|
@ -478,9 +477,9 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
rp.set_inventory, inv_list)
|
||||
|
||||
def test_delete_inventory_not_found(self):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp.create()
|
||||
error = self.assertRaises(exception.NotFound, rp.delete_inventory,
|
||||
'DISK_GB')
|
||||
|
@ -497,9 +496,9 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
% rp.uuid, str(error))
|
||||
|
||||
def test_update_inventory_not_found(self):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp.create()
|
||||
disk_inv = rp_obj.Inventory(resource_provider=rp,
|
||||
resource_class='DISK_GB',
|
||||
|
@ -536,9 +535,9 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
mock.ANY, {'uuid': rp.uuid, 'resource': 'DISK_GB'})
|
||||
|
||||
def test_add_invalid_inventory(self):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name)
|
||||
rp.create()
|
||||
disk_inv = rp_obj.Inventory(
|
||||
resource_provider=rp,
|
||||
|
@ -554,7 +553,7 @@ class ResourceProviderTestCase(ResourceProviderBaseCase):
|
|||
% rp.uuid, str(error))
|
||||
|
||||
def test_add_allocation_increments_generation(self):
|
||||
rp = objects.ResourceProvider(context=self.ctx,
|
||||
rp = rp_obj.ResourceProvider(context=self.ctx,
|
||||
uuid=uuidsentinel.inventory_resource_provider, name='foo')
|
||||
rp.create()
|
||||
inv = rp_obj.Inventory(context=self.ctx, resource_provider=rp,
|
||||
|
@ -579,7 +578,7 @@ class ResourceProviderListTestCase(ResourceProviderBaseCase):
|
|||
for rp_i in ['1', '2']:
|
||||
uuid = getattr(uuidsentinel, 'rp_uuid_' + rp_i)
|
||||
name = 'rp_name_' + rp_i
|
||||
rp = objects.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp = rp_obj.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp.create()
|
||||
|
||||
resource_providers = rp_obj.ResourceProviderList.get_all_by_filters(
|
||||
|
@ -597,7 +596,7 @@ class ResourceProviderListTestCase(ResourceProviderBaseCase):
|
|||
for rp_i in ['1', '2']:
|
||||
uuid = getattr(uuidsentinel, 'rp_uuid_' + rp_i)
|
||||
name = 'rp_name_' + rp_i
|
||||
rp = objects.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp = rp_obj.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp.create()
|
||||
inv = rp_obj.Inventory(
|
||||
resource_provider=rp,
|
||||
|
@ -702,7 +701,7 @@ class ResourceProviderListTestCase(ResourceProviderBaseCase):
|
|||
for rp_i in [1, 2, 3, 4]:
|
||||
uuid = getattr(uuidsentinel, 'rp_uuid_' + str(rp_i))
|
||||
name = 'rp_name_' + str(rp_i)
|
||||
rp = objects.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp = rp_obj.ResourceProvider(self.ctx, name=name, uuid=uuid)
|
||||
rp.create()
|
||||
if rp_i % 2:
|
||||
aggregate_uuids = [uuidsentinel.agg_a, uuidsentinel.agg_b]
|
||||
|
@ -752,7 +751,7 @@ class TestResourceProviderAggregates(test.NoDBTestCase):
|
|||
self.ctx = context.RequestContext('fake-user', 'fake-project')
|
||||
|
||||
def test_set_and_get_new_aggregates(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name
|
||||
|
@ -767,13 +766,13 @@ class TestResourceProviderAggregates(test.NoDBTestCase):
|
|||
|
||||
# Since get_aggregates always does a new query this is
|
||||
# mostly nonsense but is here for completeness.
|
||||
read_rp = objects.ResourceProvider.get_by_uuid(
|
||||
read_rp = rp_obj.ResourceProvider.get_by_uuid(
|
||||
self.ctx, uuidsentinel.rp_uuid)
|
||||
re_read_aggregate_uuids = read_rp.get_aggregates()
|
||||
self.assertItemsEqual(aggregate_uuids, re_read_aggregate_uuids)
|
||||
|
||||
def test_set_aggregates_is_replace(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name
|
||||
|
@ -796,7 +795,7 @@ class TestResourceProviderAggregates(test.NoDBTestCase):
|
|||
self.assertEqual([], read_aggregate_uuids)
|
||||
|
||||
def test_delete_rp_clears_aggs(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.rp_uuid,
|
||||
name=uuidsentinel.rp_name
|
||||
|
@ -805,17 +804,17 @@ class TestResourceProviderAggregates(test.NoDBTestCase):
|
|||
rp_id = rp.id
|
||||
start_aggregate_uuids = [uuidsentinel.agg_a, uuidsentinel.agg_b]
|
||||
rp.set_aggregates(start_aggregate_uuids)
|
||||
aggs = objects.ResourceProvider._get_aggregates(self.ctx, rp_id)
|
||||
aggs = rp_obj.ResourceProvider._get_aggregates(self.ctx, rp_id)
|
||||
self.assertEqual(2, len(aggs))
|
||||
rp.destroy()
|
||||
aggs = objects.ResourceProvider._get_aggregates(self.ctx, rp_id)
|
||||
aggs = rp_obj.ResourceProvider._get_aggregates(self.ctx, rp_id)
|
||||
self.assertEqual(0, len(aggs))
|
||||
|
||||
|
||||
class TestAllocation(ResourceProviderBaseCase):
|
||||
|
||||
def test_create_list_and_delete_allocation(self):
|
||||
resource_provider = objects.ResourceProvider(
|
||||
resource_provider = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.allocation_resource_provider,
|
||||
name=uuidsentinel.allocation_resource_name
|
||||
|
@ -867,14 +866,14 @@ class TestAllocation(ResourceProviderBaseCase):
|
|||
operation where the exiting allocation was not being properly
|
||||
deleted.
|
||||
"""
|
||||
cn_source = objects.ResourceProvider(
|
||||
cn_source = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.cn_source,
|
||||
name=uuidsentinel.cn_source,
|
||||
)
|
||||
cn_source.create()
|
||||
|
||||
cn_dest = objects.ResourceProvider(
|
||||
cn_dest = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.cn_dest,
|
||||
name=uuidsentinel.cn_dest,
|
||||
|
@ -1049,7 +1048,7 @@ class TestAllocationListCreateDelete(ResourceProviderBaseCase):
|
|||
rp2_class = fields.ResourceClass.IPV4_ADDRESS
|
||||
rp2_used = 2
|
||||
|
||||
rp1 = objects.ResourceProvider(
|
||||
rp1 = rp_obj.ResourceProvider(
|
||||
self.ctx, name=rp1_name, uuid=rp1_uuid)
|
||||
rp1.create()
|
||||
|
||||
|
@ -1111,10 +1110,10 @@ class TestAllocationListCreateDelete(ResourceProviderBaseCase):
|
|||
rp2_class = fields.ResourceClass.IPV4_ADDRESS
|
||||
rp2_used = 2
|
||||
|
||||
rp1 = objects.ResourceProvider(
|
||||
rp1 = rp_obj.ResourceProvider(
|
||||
self.ctx, name=rp1_name, uuid=rp1_uuid)
|
||||
rp1.create()
|
||||
rp2 = objects.ResourceProvider(
|
||||
rp2 = rp_obj.ResourceProvider(
|
||||
self.ctx, name=rp2_name, uuid=rp2_uuid)
|
||||
rp2.create()
|
||||
|
||||
|
@ -1221,7 +1220,7 @@ class TestAllocationListCreateDelete(ResourceProviderBaseCase):
|
|||
# Create one resource provider and set some inventory
|
||||
rp_name = uuidsentinel.rp_name
|
||||
rp_uuid = uuidsentinel.rp_uuid
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
self.ctx, name=rp_name, uuid=rp_uuid)
|
||||
rp.create()
|
||||
inv = rp_obj.Inventory(resource_provider=rp,
|
||||
|
@ -1363,7 +1362,7 @@ class UsageListTestCase(ResourceProviderBaseCase):
|
|||
|
||||
def test_get_all_null(self):
|
||||
for uuid in [uuidsentinel.rp_uuid_1, uuidsentinel.rp_uuid_2]:
|
||||
rp = objects.ResourceProvider(self.ctx, name=uuid, uuid=uuid)
|
||||
rp = rp_obj.ResourceProvider(self.ctx, name=uuid, uuid=uuid)
|
||||
rp.create()
|
||||
|
||||
usage_list = rp_obj.UsageList.get_all_by_resource_provider_uuid(
|
||||
|
@ -1387,9 +1386,9 @@ class UsageListTestCase(ResourceProviderBaseCase):
|
|||
usage_list[0].resource_class)
|
||||
|
||||
def test_get_inventory_no_allocation(self):
|
||||
db_rp = objects.ResourceProvider(self.ctx,
|
||||
name=uuidsentinel.rp_no_inv,
|
||||
uuid=uuidsentinel.rp_no_inv)
|
||||
db_rp = rp_obj.ResourceProvider(self.ctx,
|
||||
name=uuidsentinel.rp_no_inv,
|
||||
uuid=uuidsentinel.rp_no_inv)
|
||||
db_rp.create()
|
||||
inv = rp_obj.Inventory(resource_provider=db_rp,
|
||||
resource_class=fields.ResourceClass.DISK_GB,
|
||||
|
@ -1406,9 +1405,9 @@ class UsageListTestCase(ResourceProviderBaseCase):
|
|||
usage_list[0].resource_class)
|
||||
|
||||
def test_get_all_multiple_inv(self):
|
||||
db_rp = objects.ResourceProvider(self.ctx,
|
||||
name=uuidsentinel.rp_no_inv,
|
||||
uuid=uuidsentinel.rp_no_inv)
|
||||
db_rp = rp_obj.ResourceProvider(self.ctx,
|
||||
name=uuidsentinel.rp_no_inv,
|
||||
uuid=uuidsentinel.rp_no_inv)
|
||||
db_rp.create()
|
||||
disk_inv = rp_obj.Inventory(
|
||||
resource_provider=db_rp,
|
||||
|
@ -1621,7 +1620,7 @@ class ResourceClassTestCase(ResourceProviderBaseCase):
|
|||
name='CUSTOM_IRON_NFV',
|
||||
)
|
||||
rc.create()
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='my rp',
|
||||
uuid=uuidsentinel.rp,
|
||||
|
@ -1808,7 +1807,7 @@ class ResourceProviderTraitTestCase(ResourceProviderBaseCase):
|
|||
self.assertEqual(0, len(traits))
|
||||
|
||||
def test_set_traits_for_resource_provider(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -1844,13 +1843,13 @@ class ResourceProviderTraitTestCase(ResourceProviderBaseCase):
|
|||
the trait still associated with another one.
|
||||
"""
|
||||
# Create two ResourceProviders
|
||||
rp1 = objects.ResourceProvider(
|
||||
rp1 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider1,
|
||||
name=uuidsentinel.fake_resource_name1,
|
||||
)
|
||||
rp1.create()
|
||||
rp2 = objects.ResourceProvider(
|
||||
rp2 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider2,
|
||||
name=uuidsentinel.fake_resource_name2,
|
||||
|
@ -1877,7 +1876,7 @@ class ResourceProviderTraitTestCase(ResourceProviderBaseCase):
|
|||
self._assert_traits(['CUSTOM_TRAIT_A'], rp2.get_traits())
|
||||
|
||||
def test_trait_delete_in_use(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider,
|
||||
name=uuidsentinel.fake_resource_name,
|
||||
|
@ -1890,13 +1889,13 @@ class ResourceProviderTraitTestCase(ResourceProviderBaseCase):
|
|||
self.assertRaises(exception.TraitInUse, t.destroy)
|
||||
|
||||
def test_traits_get_all_with_associated_true(self):
|
||||
rp1 = objects.ResourceProvider(
|
||||
rp1 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider1,
|
||||
name=uuidsentinel.fake_resource_name1,
|
||||
)
|
||||
rp1.create()
|
||||
rp2 = objects.ResourceProvider(
|
||||
rp2 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider2,
|
||||
name=uuidsentinel.fake_resource_name2,
|
||||
|
@ -1917,13 +1916,13 @@ class ResourceProviderTraitTestCase(ResourceProviderBaseCase):
|
|||
filters={'associated': True}))
|
||||
|
||||
def test_traits_get_all_with_associated_false(self):
|
||||
rp1 = objects.ResourceProvider(
|
||||
rp1 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider1,
|
||||
name=uuidsentinel.fake_resource_name1,
|
||||
)
|
||||
rp1.create()
|
||||
rp2 = objects.ResourceProvider(
|
||||
rp2 = rp_obj.ResourceProvider(
|
||||
context=self.ctx,
|
||||
uuid=uuidsentinel.fake_resource_provider2,
|
||||
name=uuidsentinel.fake_resource_name2,
|
||||
|
@ -1990,7 +1989,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
"""
|
||||
# Create the two "local disk" compute node providers
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -1998,7 +1997,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -2032,7 +2031,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the shared storage pool
|
||||
ss_uuid = uuidsentinel.ss
|
||||
ss = objects.ResourceProvider(
|
||||
ss = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='shared storage',
|
||||
uuid=ss_uuid,
|
||||
|
@ -2079,7 +2078,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the two compute node providers
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -2087,7 +2086,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -2121,7 +2120,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the shared storage pool
|
||||
ss_uuid = uuidsentinel.ss
|
||||
ss = objects.ResourceProvider(
|
||||
ss = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='shared storage',
|
||||
uuid=ss_uuid,
|
||||
|
@ -2180,7 +2179,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
# is also returned by _get_all_with_shared() along with the other
|
||||
# compute nodes that are associated with the shared storage pool.
|
||||
cn3_uuid = uuidsentinel.cn3
|
||||
cn3 = objects.ResourceProvider(
|
||||
cn3 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn3',
|
||||
uuid=cn3_uuid,
|
||||
|
@ -2287,7 +2286,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
# compute node providers are returned by _get_all_with_shared()
|
||||
|
||||
cn4_uuid = uuidsentinel.cn4
|
||||
cn4 = objects.ResourceProvider(
|
||||
cn4 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn4',
|
||||
uuid=cn4_uuid,
|
||||
|
@ -2295,7 +2294,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
cn4.create()
|
||||
|
||||
cn5_uuid = uuidsentinel.cn5
|
||||
cn5 = objects.ResourceProvider(
|
||||
cn5 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn5',
|
||||
uuid=cn5_uuid,
|
||||
|
@ -2330,7 +2329,7 @@ class SharedProviderTestCase(ResourceProviderBaseCase):
|
|||
# Create the storage provider but do NOT mark it sharing its inventory
|
||||
# with other providers
|
||||
ns_uuid = uuidsentinel.ns
|
||||
ns = objects.ResourceProvider(
|
||||
ns = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='non_shared storage',
|
||||
uuid=ns_uuid,
|
||||
|
@ -2420,7 +2419,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
"""
|
||||
# Create two compute node providers with VCPU, RAM and local disk
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -2428,7 +2427,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -2436,7 +2435,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn2.create()
|
||||
|
||||
cn3_uuid = uuidsentinel.cn3
|
||||
cn3 = objects.ResourceProvider(
|
||||
cn3 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn3',
|
||||
uuid=cn3_uuid
|
||||
|
@ -2578,7 +2577,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create two compute node providers with VCPU, RAM and NO local disk
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -2586,7 +2585,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -2620,7 +2619,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the shared storage pool
|
||||
ss_uuid = uuidsentinel.ss
|
||||
ss = objects.ResourceProvider(
|
||||
ss = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='shared storage',
|
||||
uuid=ss_uuid,
|
||||
|
@ -2816,7 +2815,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
# Create two compute node providers with VCPU, RAM and NO local
|
||||
# CUSTOM_MAGIC resources
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -2824,7 +2823,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -2865,7 +2864,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the shared provider that servers MAGIC
|
||||
magic_p_uuid = uuidsentinel.magic_p
|
||||
magic_p = objects.ResourceProvider(
|
||||
magic_p = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='shared custom resource provider',
|
||||
uuid=magic_p_uuid,
|
||||
|
@ -2988,7 +2987,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
# the third compute node has DISK. The first two computes will
|
||||
# share the storage from the shared storage pool
|
||||
cn1_uuid = uuidsentinel.cn1
|
||||
cn1 = objects.ResourceProvider(
|
||||
cn1 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn1',
|
||||
uuid=cn1_uuid,
|
||||
|
@ -2996,7 +2995,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn1.create()
|
||||
|
||||
cn2_uuid = uuidsentinel.cn2
|
||||
cn2 = objects.ResourceProvider(
|
||||
cn2 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn2',
|
||||
uuid=cn2_uuid,
|
||||
|
@ -3004,7 +3003,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
cn2.create()
|
||||
|
||||
cn3_uuid = uuidsentinel.cn3
|
||||
cn3 = objects.ResourceProvider(
|
||||
cn3 = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='cn3',
|
||||
uuid=cn3_uuid
|
||||
|
@ -3052,7 +3051,7 @@ class AllocationCandidatesTestCase(ResourceProviderBaseCase):
|
|||
|
||||
# Create the shared storage pool
|
||||
ss_uuid = uuidsentinel.ss
|
||||
ss = objects.ResourceProvider(
|
||||
ss = rp_obj.ResourceProvider(
|
||||
self.ctx,
|
||||
name='shared storage',
|
||||
uuid=ss_uuid,
|
||||
|
|
|
@ -19,7 +19,6 @@ import webob
|
|||
|
||||
from nova.api.openstack.placement import microversion
|
||||
from nova.api.openstack.placement import util
|
||||
from nova import objects
|
||||
from nova.objects import resource_provider as rp_obj
|
||||
from nova import test
|
||||
from nova.tests import uuidsentinel
|
||||
|
@ -262,7 +261,7 @@ class TestPlacementURLs(test.NoDBTestCase):
|
|||
|
||||
def setUp(self):
|
||||
super(TestPlacementURLs, self).setUp()
|
||||
self.resource_provider = objects.ResourceProvider(
|
||||
self.resource_provider = rp_obj.ResourceProvider(
|
||||
name=uuidsentinel.rp_name,
|
||||
uuid=uuidsentinel.rp_uuid)
|
||||
self.resource_class = rp_obj.ResourceClass(
|
||||
|
|
|
@ -549,7 +549,7 @@ class TestUpgradeCheckResourceProviders(test.NoDBTestCase):
|
|||
"""Helper method to create a resource provider with inventory"""
|
||||
ctxt = context.get_admin_context()
|
||||
rp_uuid = uuidutils.generate_uuid()
|
||||
rp = objects.ResourceProvider(
|
||||
rp = rp_obj.ResourceProvider(
|
||||
context=ctxt,
|
||||
name=rp_uuid,
|
||||
uuid=rp_uuid)
|
||||
|
|
|
@ -1146,7 +1146,6 @@ object_data = {
|
|||
'Quotas': '1.3-40fcefe522111dddd3e5e6155702cf4e',
|
||||
'QuotasNoOp': '1.3-347a039fc7cfee7b225b68b5181e0733',
|
||||
'RequestSpec': '1.8-35033ecef47a880f9a5e46e2269e2b97',
|
||||
'ResourceProvider': '1.4-35e8a41d2ece17a862fac5b07ca966af',
|
||||
'S3ImageMapping': '1.0-7dd7366a890d82660ed121de9092276e',
|
||||
'SchedulerLimits': '1.0-249c4bd8e62a9b327b7026b7f19cc641',
|
||||
'SchedulerRetries': '1.1-3c9c8b16143ebbb6ad7030e999d14cc0',
|
||||
|
|
|
@ -71,21 +71,21 @@ def _fake_ensure_cache(ctxt):
|
|||
class TestResourceProviderNoDB(test_objects._LocalTest):
|
||||
USES_DB = False
|
||||
|
||||
@mock.patch('nova.objects.ResourceProvider._get_by_uuid_from_db',
|
||||
return_value=_RESOURCE_PROVIDER_DB)
|
||||
@mock.patch('nova.objects.resource_provider.ResourceProvider.'
|
||||
'_get_by_uuid_from_db', return_value=_RESOURCE_PROVIDER_DB)
|
||||
def test_object_get_by_uuid(self, mock_db_get):
|
||||
resource_provider_object = objects.ResourceProvider.get_by_uuid(
|
||||
mock.sentinel.ctx, _RESOURCE_PROVIDER_UUID)
|
||||
resource_provider_object = resource_provider.ResourceProvider.\
|
||||
get_by_uuid(mock.sentinel.ctx, _RESOURCE_PROVIDER_UUID)
|
||||
self.assertEqual(_RESOURCE_PROVIDER_ID, resource_provider_object.id)
|
||||
self.assertEqual(_RESOURCE_PROVIDER_UUID,
|
||||
resource_provider_object.uuid)
|
||||
|
||||
@mock.patch('nova.objects.ResourceProvider._create_in_db',
|
||||
return_value=_RESOURCE_PROVIDER_DB)
|
||||
@mock.patch('nova.objects.resource_provider.ResourceProvider.'
|
||||
'_create_in_db', return_value=_RESOURCE_PROVIDER_DB)
|
||||
def test_create(self, mock_db_create):
|
||||
obj = objects.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
obj = resource_provider.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
obj.create()
|
||||
self.assertEqual(_RESOURCE_PROVIDER_UUID, obj.uuid)
|
||||
self.assertIsInstance(obj.id, int)
|
||||
|
@ -94,14 +94,14 @@ class TestResourceProviderNoDB(test_objects._LocalTest):
|
|||
'name': _RESOURCE_PROVIDER_NAME})
|
||||
|
||||
def test_create_id_fail(self):
|
||||
obj = objects.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
id=_RESOURCE_PROVIDER_ID)
|
||||
obj = resource_provider.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
id=_RESOURCE_PROVIDER_ID)
|
||||
self.assertRaises(exception.ObjectActionError,
|
||||
obj.create)
|
||||
|
||||
def test_create_no_uuid_fail(self):
|
||||
obj = objects.ResourceProvider(context=self.context)
|
||||
obj = resource_provider.ResourceProvider(context=self.context)
|
||||
self.assertRaises(exception.ObjectActionError,
|
||||
obj.create)
|
||||
|
||||
|
@ -111,7 +111,7 @@ class TestResourceProvider(test_objects._LocalTest):
|
|||
def test_create_in_db(self):
|
||||
updates = {'uuid': _RESOURCE_PROVIDER_UUID,
|
||||
'name': _RESOURCE_PROVIDER_NAME}
|
||||
db_rp = objects.ResourceProvider._create_in_db(
|
||||
db_rp = resource_provider.ResourceProvider._create_in_db(
|
||||
self.context, updates)
|
||||
self.assertIsInstance(db_rp.id, int)
|
||||
self.assertEqual(_RESOURCE_PROVIDER_UUID, db_rp.uuid)
|
||||
|
@ -121,23 +121,23 @@ class TestResourceProvider(test_objects._LocalTest):
|
|||
fields = {'id': 1, 'uuid': _RESOURCE_PROVIDER_UUID,
|
||||
'generation': 1}
|
||||
for field in fields:
|
||||
rp = objects.ResourceProvider(context=self.context)
|
||||
rp = resource_provider.ResourceProvider(context=self.context)
|
||||
setattr(rp, field, fields[field])
|
||||
self.assertRaises(exception.ObjectActionError, rp.save)
|
||||
|
||||
def test_get_by_uuid_from_db(self):
|
||||
rp = objects.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp = resource_provider.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp.create()
|
||||
retrieved_rp = objects.ResourceProvider._get_by_uuid_from_db(
|
||||
retrieved_rp = resource_provider.ResourceProvider._get_by_uuid_from_db(
|
||||
self.context, _RESOURCE_PROVIDER_UUID)
|
||||
self.assertEqual(rp.uuid, retrieved_rp.uuid)
|
||||
self.assertEqual(rp.name, retrieved_rp.name)
|
||||
|
||||
def test_get_by_uuid_from_db_missing(self):
|
||||
self.assertRaises(exception.NotFound,
|
||||
objects.ResourceProvider.get_by_uuid,
|
||||
resource_provider.ResourceProvider.get_by_uuid,
|
||||
self.context, uuids.missing)
|
||||
|
||||
|
||||
|
@ -149,8 +149,8 @@ class TestInventoryNoDB(test_objects._LocalTest):
|
|||
@mock.patch('nova.objects.resource_provider.Inventory._create_in_db',
|
||||
return_value=_INVENTORY_DB)
|
||||
def test_create(self, mock_db_create, mock_ensure_cache):
|
||||
rp = objects.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
rp = resource_provider.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
obj = resource_provider.Inventory(context=self.context,
|
||||
resource_provider=rp,
|
||||
resource_class=_RESOURCE_CLASS_NAME,
|
||||
|
@ -200,8 +200,8 @@ class TestInventoryNoDB(test_objects._LocalTest):
|
|||
def test_non_negative_handling(self):
|
||||
# NOTE(cdent): Just checking, useless to be actually
|
||||
# comprehensive here.
|
||||
rp = objects.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
rp = resource_provider.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
kwargs = dict(resource_provider=rp,
|
||||
resource_class=_RESOURCE_CLASS_NAME,
|
||||
total=16,
|
||||
|
@ -214,8 +214,8 @@ class TestInventoryNoDB(test_objects._LocalTest):
|
|||
**kwargs)
|
||||
|
||||
def test_set_defaults(self):
|
||||
rp = objects.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
rp = resource_provider.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
kwargs = dict(resource_provider=rp,
|
||||
resource_class=_RESOURCE_CLASS_NAME,
|
||||
total=16)
|
||||
|
@ -229,8 +229,8 @@ class TestInventoryNoDB(test_objects._LocalTest):
|
|||
self.assertEqual(1.0, inv.allocation_ratio)
|
||||
|
||||
def test_capacity(self):
|
||||
rp = objects.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
rp = resource_provider.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=_RESOURCE_PROVIDER_UUID)
|
||||
kwargs = dict(resource_provider=rp,
|
||||
resource_class=_RESOURCE_CLASS_NAME,
|
||||
total=16,
|
||||
|
@ -250,7 +250,7 @@ class TestInventory(test_objects._LocalTest):
|
|||
def _make_inventory(self, rp_uuid=None):
|
||||
uuid = rp_uuid or uuids.inventory_resource_provider
|
||||
name = uuid
|
||||
db_rp = objects.ResourceProvider(
|
||||
db_rp = resource_provider.ResourceProvider(
|
||||
context=self.context, uuid=uuid, name=name)
|
||||
db_rp.create()
|
||||
db_inventory = self._create_inventory_in_db(db_rp.id)
|
||||
|
@ -368,7 +368,7 @@ class TestInventory(test_objects._LocalTest):
|
|||
self.assertIn('resource_provider required', str(error))
|
||||
|
||||
def test_create_requires_created_resource_provider(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = resource_provider.ResourceProvider(
|
||||
context=self.context, uuid=uuids.inventory_resource_provider)
|
||||
inventory_dict = dict(_INVENTORY_DB)
|
||||
inventory_dict.pop('id')
|
||||
|
@ -382,7 +382,7 @@ class TestInventory(test_objects._LocalTest):
|
|||
self.assertIn('resource_provider required', str(error))
|
||||
|
||||
def test_create_requires_resource_class(self):
|
||||
rp = objects.ResourceProvider(
|
||||
rp = resource_provider.ResourceProvider(
|
||||
context=self.context, uuid=uuids.inventory_resource_provider,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp.create()
|
||||
|
@ -408,7 +408,7 @@ class TestInventory(test_objects._LocalTest):
|
|||
self.assertRaises(exception.ObjectActionError, inventory.save)
|
||||
|
||||
def test_find(self):
|
||||
rp = objects.ResourceProvider(uuid=uuids.rp_uuid)
|
||||
rp = resource_provider.ResourceProvider(uuid=uuids.rp_uuid)
|
||||
inv_list = resource_provider.InventoryList(objects=[
|
||||
resource_provider.Inventory(
|
||||
resource_provider=rp,
|
||||
|
@ -444,9 +444,9 @@ class TestAllocation(test_objects._LocalTest):
|
|||
@mock.patch('nova.objects.resource_provider._ensure_rc_cache',
|
||||
side_effect=_fake_ensure_cache)
|
||||
def test_create(self, mock_ensure_cache):
|
||||
rp = objects.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp = resource_provider.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp.create()
|
||||
inv = resource_provider.Inventory(context=self.context,
|
||||
resource_provider=rp,
|
||||
|
@ -470,9 +470,9 @@ class TestAllocation(test_objects._LocalTest):
|
|||
self.assertIn("id", obj)
|
||||
|
||||
def test_create_with_id_fails(self):
|
||||
rp = objects.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp = resource_provider.ResourceProvider(context=self.context,
|
||||
uuid=_RESOURCE_PROVIDER_UUID,
|
||||
name=_RESOURCE_PROVIDER_NAME)
|
||||
rp.create()
|
||||
inv = resource_provider.Inventory(context=self.context,
|
||||
resource_provider=rp,
|
||||
|
@ -504,8 +504,8 @@ class TestAllocationListNoDB(test_objects._LocalTest):
|
|||
'_get_allocations_from_db', return_value=[_ALLOCATION_DB])
|
||||
def test_get_allocations(self, mock_get_allocations_from_db,
|
||||
mock_ensure_cache):
|
||||
rp = objects.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=uuids.resource_provider)
|
||||
rp = resource_provider.ResourceProvider(id=_RESOURCE_PROVIDER_ID,
|
||||
uuid=uuids.resource_provider)
|
||||
rp_alloc_list = resource_provider.AllocationList
|
||||
allocations = rp_alloc_list.get_all_by_resource_provider_uuid(
|
||||
self.context, rp.uuid)
|
||||
|
|
Loading…
Reference in New Issue