From efafd919efb32665d0f14761dd113554af298068 Mon Sep 17 00:00:00 2001 From: Chris Dent Date: Fri, 8 Sep 2017 20:11:59 +0100 Subject: [PATCH] [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 --- .../openstack/placement/handlers/aggregate.py | 6 +- .../placement/handlers/allocation.py | 5 +- .../openstack/placement/handlers/inventory.py | 15 +- .../placement/handlers/resource_provider.py | 9 +- .../api/openstack/placement/handlers/trait.py | 7 +- .../api/openstack/placement/handlers/usage.py | 3 +- nova/objects/resource_provider.py | 11 +- .../api/openstack/placement/fixtures.py | 8 +- .../functional/db/test_resource_provider.py | 169 +++++++++--------- .../unit/api/openstack/placement/test_util.py | 3 +- nova/tests/unit/cmd/test_status.py | 2 +- nova/tests/unit/objects/test_objects.py | 1 - .../unit/objects/test_resource_provider.py | 80 ++++----- 13 files changed, 152 insertions(+), 167 deletions(-) diff --git a/nova/api/openstack/placement/handlers/aggregate.py b/nova/api/openstack/placement/handlers/aggregate.py index 063b4fe149a6..3fec87ddbed0 100644 --- a/nova/api/openstack/placement/handlers/aggregate.py +++ b/nova/api/openstack/placement/handlers/aggregate.py @@ -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) diff --git a/nova/api/openstack/placement/handlers/allocation.py b/nova/api/openstack/placement/handlers/allocation.py index 234aad963cf5..8d5cadd18469 100644 --- a/nova/api/openstack/placement/handlers/allocation.py +++ b/nova/api/openstack/placement/handlers/allocation.py @@ -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( diff --git a/nova/api/openstack/placement/handlers/inventory.py b/nova/api/openstack/placement/handlers/inventory.py index 30b321b0d3fc..fd4358204661 100644 --- a/nova/api/openstack/placement/handlers/inventory.py +++ b/nova/api/openstack/placement/handlers/inventory.py @@ -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) diff --git a/nova/api/openstack/placement/handlers/resource_provider.py b/nova/api/openstack/placement/handlers/resource_provider.py index f74239aa7d4d..45fbe9b2c5fe 100644 --- a/nova/api/openstack/placement/handlers/resource_provider.py +++ b/nova/api/openstack/placement/handlers/resource_provider.py @@ -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) diff --git a/nova/api/openstack/placement/handlers/trait.py b/nova/api/openstack/placement/handlers/trait.py index 3348b7aa3f16..ca8bb8e8d1c8 100644 --- a/nova/api/openstack/placement/handlers/trait.py +++ b/nova/api/openstack/placement/handlers/trait.py @@ -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: diff --git a/nova/api/openstack/placement/handlers/usage.py b/nova/api/openstack/placement/handlers/usage.py index 5151352e9c87..6349c5352bcd 100644 --- a/nova/api/openstack/placement/handlers/usage.py +++ b/nova/api/openstack/placement/handlers/usage.py @@ -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( diff --git a/nova/objects/resource_provider.py b/nova/objects/resource_provider.py index 166c408595df..d87cf5003749 100644 --- a/nova/objects/resource_provider.py +++ b/nova/objects/resource_provider.py @@ -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): diff --git a/nova/tests/functional/api/openstack/placement/fixtures.py b/nova/tests/functional/api/openstack/placement/fixtures.py index 558e20e4396b..f7b2f3090a0f 100644 --- a/nova/tests/functional/api/openstack/placement/fixtures.py +++ b/nova/tests/functional/api/openstack/placement/fixtures.py @@ -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) diff --git a/nova/tests/functional/db/test_resource_provider.py b/nova/tests/functional/db/test_resource_provider.py index a02031c8c6b5..4f1b6722326d 100644 --- a/nova/tests/functional/db/test_resource_provider.py +++ b/nova/tests/functional/db/test_resource_provider.py @@ -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, diff --git a/nova/tests/unit/api/openstack/placement/test_util.py b/nova/tests/unit/api/openstack/placement/test_util.py index f5d307175271..f6a1a182cab4 100644 --- a/nova/tests/unit/api/openstack/placement/test_util.py +++ b/nova/tests/unit/api/openstack/placement/test_util.py @@ -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( diff --git a/nova/tests/unit/cmd/test_status.py b/nova/tests/unit/cmd/test_status.py index 4c1c4723bb8c..bb0ab6e373e5 100644 --- a/nova/tests/unit/cmd/test_status.py +++ b/nova/tests/unit/cmd/test_status.py @@ -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) diff --git a/nova/tests/unit/objects/test_objects.py b/nova/tests/unit/objects/test_objects.py index 65781af998f4..23e546da35d9 100644 --- a/nova/tests/unit/objects/test_objects.py +++ b/nova/tests/unit/objects/test_objects.py @@ -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', diff --git a/nova/tests/unit/objects/test_resource_provider.py b/nova/tests/unit/objects/test_resource_provider.py index 021c8ddeefcc..a49ba310f6ec 100644 --- a/nova/tests/unit/objects/test_resource_provider.py +++ b/nova/tests/unit/objects/test_resource_provider.py @@ -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)