diff --git a/nova/api/openstack/compute/__init__.py b/nova/api/openstack/compute/__init__.py index cc9d11ef381d..c2e403da01a7 100644 --- a/nova/api/openstack/compute/__init__.py +++ b/nova/api/openstack/compute/__init__.py @@ -21,6 +21,7 @@ WSGI middleware for OpenStack Compute API. from oslo_config import cfg import nova.api.openstack +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import consoles as v2_consoles from nova.api.openstack.compute.legacy_v2 import extensions as v2_extensions from nova.api.openstack.compute.legacy_v2 import flavors as v2_flavors @@ -32,9 +33,8 @@ from nova.api.openstack.compute.legacy_v2 import limits as v2_limits from nova.api.openstack.compute.legacy_v2 import server_metadata \ as v2_server_metadata from nova.api.openstack.compute.legacy_v2 import servers as v2_servers -from nova.api.openstack.compute.legacy_v2 import versions as \ - legacy_v2_versions -from nova.api.openstack.compute import plugins +from nova.api.openstack.compute.legacy_v2 import versions \ + as legacy_v2_versions allow_instance_snapshots_opt = cfg.BoolOpt('allow_instance_snapshots', default=True, @@ -137,7 +137,7 @@ class APIRouterV21(nova.api.openstack.APIRouterV21): and method. """ def __init__(self, init_only=None): - self._loaded_extension_info = plugins.LoadedExtensionInfo() + self._loaded_extension_info = extension_info.LoadedExtensionInfo() super(APIRouterV21, self).__init__(init_only) def _register_extension(self, ext): @@ -155,7 +155,7 @@ class APIRouterV3(nova.api.openstack.APIRouterV21): and method. """ def __init__(self, init_only=None): - self._loaded_extension_info = plugins.LoadedExtensionInfo() + self._loaded_extension_info = extension_info.LoadedExtensionInfo() super(APIRouterV3, self).__init__(init_only, v3mode=True) def _register_extension(self, ext): diff --git a/nova/api/openstack/compute/plugins/v3/access_ips.py b/nova/api/openstack/compute/access_ips.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/access_ips.py rename to nova/api/openstack/compute/access_ips.py diff --git a/nova/api/openstack/compute/plugins/v3/admin_actions.py b/nova/api/openstack/compute/admin_actions.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/admin_actions.py rename to nova/api/openstack/compute/admin_actions.py diff --git a/nova/api/openstack/compute/plugins/v3/admin_password.py b/nova/api/openstack/compute/admin_password.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/admin_password.py rename to nova/api/openstack/compute/admin_password.py diff --git a/nova/api/openstack/compute/plugins/v3/agents.py b/nova/api/openstack/compute/agents.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/agents.py rename to nova/api/openstack/compute/agents.py diff --git a/nova/api/openstack/compute/plugins/v3/aggregates.py b/nova/api/openstack/compute/aggregates.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/aggregates.py rename to nova/api/openstack/compute/aggregates.py diff --git a/nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py b/nova/api/openstack/compute/assisted_volume_snapshots.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/assisted_volume_snapshots.py rename to nova/api/openstack/compute/assisted_volume_snapshots.py diff --git a/nova/api/openstack/compute/plugins/v3/attach_interfaces.py b/nova/api/openstack/compute/attach_interfaces.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/attach_interfaces.py rename to nova/api/openstack/compute/attach_interfaces.py diff --git a/nova/api/openstack/compute/plugins/v3/availability_zone.py b/nova/api/openstack/compute/availability_zone.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/availability_zone.py rename to nova/api/openstack/compute/availability_zone.py diff --git a/nova/api/openstack/compute/plugins/v3/baremetal_nodes.py b/nova/api/openstack/compute/baremetal_nodes.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/baremetal_nodes.py rename to nova/api/openstack/compute/baremetal_nodes.py diff --git a/nova/api/openstack/compute/plugins/v3/block_device_mapping.py b/nova/api/openstack/compute/block_device_mapping.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/block_device_mapping.py rename to nova/api/openstack/compute/block_device_mapping.py diff --git a/nova/api/openstack/compute/plugins/v3/block_device_mapping_v1.py b/nova/api/openstack/compute/block_device_mapping_v1.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/block_device_mapping_v1.py rename to nova/api/openstack/compute/block_device_mapping_v1.py diff --git a/nova/api/openstack/compute/plugins/v3/cells.py b/nova/api/openstack/compute/cells.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/cells.py rename to nova/api/openstack/compute/cells.py diff --git a/nova/api/openstack/compute/plugins/v3/certificates.py b/nova/api/openstack/compute/certificates.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/certificates.py rename to nova/api/openstack/compute/certificates.py diff --git a/nova/api/openstack/compute/plugins/v3/cloudpipe.py b/nova/api/openstack/compute/cloudpipe.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/cloudpipe.py rename to nova/api/openstack/compute/cloudpipe.py diff --git a/nova/api/openstack/compute/plugins/v3/config_drive.py b/nova/api/openstack/compute/config_drive.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/config_drive.py rename to nova/api/openstack/compute/config_drive.py diff --git a/nova/api/openstack/compute/plugins/v3/console_auth_tokens.py b/nova/api/openstack/compute/console_auth_tokens.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/console_auth_tokens.py rename to nova/api/openstack/compute/console_auth_tokens.py diff --git a/nova/api/openstack/compute/plugins/v3/console_output.py b/nova/api/openstack/compute/console_output.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/console_output.py rename to nova/api/openstack/compute/console_output.py diff --git a/nova/api/openstack/compute/plugins/v3/consoles.py b/nova/api/openstack/compute/consoles.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/consoles.py rename to nova/api/openstack/compute/consoles.py diff --git a/nova/api/openstack/compute/plugins/v3/create_backup.py b/nova/api/openstack/compute/create_backup.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/create_backup.py rename to nova/api/openstack/compute/create_backup.py diff --git a/nova/api/openstack/compute/plugins/v3/deferred_delete.py b/nova/api/openstack/compute/deferred_delete.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/deferred_delete.py rename to nova/api/openstack/compute/deferred_delete.py diff --git a/nova/api/openstack/compute/plugins/v3/disk_config.py b/nova/api/openstack/compute/disk_config.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/disk_config.py rename to nova/api/openstack/compute/disk_config.py diff --git a/nova/api/openstack/compute/plugins/v3/evacuate.py b/nova/api/openstack/compute/evacuate.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/evacuate.py rename to nova/api/openstack/compute/evacuate.py diff --git a/nova/api/openstack/compute/plugins/v3/extended_availability_zone.py b/nova/api/openstack/compute/extended_availability_zone.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/extended_availability_zone.py rename to nova/api/openstack/compute/extended_availability_zone.py diff --git a/nova/api/openstack/compute/plugins/v3/extended_server_attributes.py b/nova/api/openstack/compute/extended_server_attributes.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/extended_server_attributes.py rename to nova/api/openstack/compute/extended_server_attributes.py diff --git a/nova/api/openstack/compute/plugins/v3/extended_status.py b/nova/api/openstack/compute/extended_status.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/extended_status.py rename to nova/api/openstack/compute/extended_status.py diff --git a/nova/api/openstack/compute/plugins/v3/extended_volumes.py b/nova/api/openstack/compute/extended_volumes.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/extended_volumes.py rename to nova/api/openstack/compute/extended_volumes.py diff --git a/nova/api/openstack/compute/plugins/v3/extension_info.py b/nova/api/openstack/compute/extension_info.py similarity index 90% rename from nova/api/openstack/compute/plugins/v3/extension_info.py rename to nova/api/openstack/compute/extension_info.py index 60eda264a077..069aaf52d68b 100644 --- a/nova/api/openstack/compute/plugins/v3/extension_info.py +++ b/nova/api/openstack/compute/extension_info.py @@ -20,6 +20,8 @@ import webob.exc from nova.api.openstack import extensions from nova.api.openstack import wsgi +from nova import exception +from nova.i18n import _LE ALIAS = 'extensions' LOG = logging.getLogger(__name__) @@ -213,3 +215,35 @@ class ExtensionInfo(extensions.V3APIExtensionBase): def get_controller_extensions(self): return [] + + +class LoadedExtensionInfo(object): + """Keep track of all loaded API extensions.""" + + def __init__(self): + self.extensions = {} + + def register_extension(self, ext): + if not self._check_extension(ext): + return False + + alias = ext.alias + + if alias in self.extensions: + raise exception.NovaException("Found duplicate extension: %s" + % alias) + self.extensions[alias] = ext + return True + + def _check_extension(self, extension): + """Checks for required methods in extension objects.""" + try: + extension.is_valid() + except AttributeError: + LOG.exception(_LE("Exception loading extension")) + return False + + return True + + def get_extensions(self): + return self.extensions diff --git a/nova/api/openstack/compute/plugins/v3/fixed_ips.py b/nova/api/openstack/compute/fixed_ips.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/fixed_ips.py rename to nova/api/openstack/compute/fixed_ips.py diff --git a/nova/api/openstack/compute/plugins/v3/flavor_access.py b/nova/api/openstack/compute/flavor_access.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/flavor_access.py rename to nova/api/openstack/compute/flavor_access.py diff --git a/nova/api/openstack/compute/plugins/v3/flavor_manage.py b/nova/api/openstack/compute/flavor_manage.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/flavor_manage.py rename to nova/api/openstack/compute/flavor_manage.py diff --git a/nova/api/openstack/compute/plugins/v3/flavor_rxtx.py b/nova/api/openstack/compute/flavor_rxtx.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/flavor_rxtx.py rename to nova/api/openstack/compute/flavor_rxtx.py diff --git a/nova/api/openstack/compute/plugins/v3/flavors.py b/nova/api/openstack/compute/flavors.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/flavors.py rename to nova/api/openstack/compute/flavors.py diff --git a/nova/api/openstack/compute/plugins/v3/flavors_extraspecs.py b/nova/api/openstack/compute/flavors_extraspecs.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/flavors_extraspecs.py rename to nova/api/openstack/compute/flavors_extraspecs.py diff --git a/nova/api/openstack/compute/plugins/v3/floating_ip_dns.py b/nova/api/openstack/compute/floating_ip_dns.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/floating_ip_dns.py rename to nova/api/openstack/compute/floating_ip_dns.py diff --git a/nova/api/openstack/compute/plugins/v3/floating_ip_pools.py b/nova/api/openstack/compute/floating_ip_pools.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/floating_ip_pools.py rename to nova/api/openstack/compute/floating_ip_pools.py diff --git a/nova/api/openstack/compute/plugins/v3/floating_ips.py b/nova/api/openstack/compute/floating_ips.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/floating_ips.py rename to nova/api/openstack/compute/floating_ips.py diff --git a/nova/api/openstack/compute/plugins/v3/floating_ips_bulk.py b/nova/api/openstack/compute/floating_ips_bulk.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/floating_ips_bulk.py rename to nova/api/openstack/compute/floating_ips_bulk.py diff --git a/nova/api/openstack/compute/plugins/v3/fping.py b/nova/api/openstack/compute/fping.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/fping.py rename to nova/api/openstack/compute/fping.py diff --git a/nova/api/openstack/compute/plugins/v3/hide_server_addresses.py b/nova/api/openstack/compute/hide_server_addresses.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/hide_server_addresses.py rename to nova/api/openstack/compute/hide_server_addresses.py diff --git a/nova/api/openstack/compute/plugins/v3/hosts.py b/nova/api/openstack/compute/hosts.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/hosts.py rename to nova/api/openstack/compute/hosts.py diff --git a/nova/api/openstack/compute/plugins/v3/hypervisors.py b/nova/api/openstack/compute/hypervisors.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/hypervisors.py rename to nova/api/openstack/compute/hypervisors.py diff --git a/nova/api/openstack/compute/plugins/v3/image_metadata.py b/nova/api/openstack/compute/image_metadata.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/image_metadata.py rename to nova/api/openstack/compute/image_metadata.py diff --git a/nova/api/openstack/compute/plugins/v3/image_size.py b/nova/api/openstack/compute/image_size.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/image_size.py rename to nova/api/openstack/compute/image_size.py diff --git a/nova/api/openstack/compute/plugins/v3/images.py b/nova/api/openstack/compute/images.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/images.py rename to nova/api/openstack/compute/images.py diff --git a/nova/api/openstack/compute/plugins/v3/instance_actions.py b/nova/api/openstack/compute/instance_actions.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/instance_actions.py rename to nova/api/openstack/compute/instance_actions.py diff --git a/nova/api/openstack/compute/plugins/v3/instance_usage_audit_log.py b/nova/api/openstack/compute/instance_usage_audit_log.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/instance_usage_audit_log.py rename to nova/api/openstack/compute/instance_usage_audit_log.py diff --git a/nova/api/openstack/compute/plugins/v3/ips.py b/nova/api/openstack/compute/ips.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/ips.py rename to nova/api/openstack/compute/ips.py diff --git a/nova/api/openstack/compute/plugins/v3/keypairs.py b/nova/api/openstack/compute/keypairs.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/keypairs.py rename to nova/api/openstack/compute/keypairs.py diff --git a/nova/api/openstack/compute/legacy_v2/contrib/hide_server_addresses.py b/nova/api/openstack/compute/legacy_v2/contrib/hide_server_addresses.py index 3ca073e50136..507123b79475 100644 --- a/nova/api/openstack/compute/legacy_v2/contrib/hide_server_addresses.py +++ b/nova/api/openstack/compute/legacy_v2/contrib/hide_server_addresses.py @@ -24,7 +24,7 @@ from nova.compute import vm_states CONF = cfg.CONF CONF.import_opt('osapi_hide_server_address_states', - 'nova.api.openstack.compute.plugins.v3.hide_server_addresses') + 'nova.api.openstack.compute.hide_server_addresses') authorize = extensions.soft_extension_authorizer('compute', 'hide_server_addresses') diff --git a/nova/api/openstack/compute/limits.py b/nova/api/openstack/compute/limits.py index 6ffa79aa4456..04a4d1437eff 100644 --- a/nova/api/openstack/compute/limits.py +++ b/nova/api/openstack/compute/limits.py @@ -14,9 +14,54 @@ # under the License. from nova.api.openstack.compute.legacy_v2 import limits +from nova.api.openstack.compute.views import limits as limits_views +from nova.api.openstack import extensions +from nova.api.openstack import wsgi +from nova import quota # NOTE(alex_xu): This is just for keeping backward compatible with v2 endpoint # in api-paste.ini. This will be removed after v2 API code deprecated in the # future. RateLimitingMiddleware = limits.RateLimitingMiddleware + +QUOTAS = quota.QUOTAS +ALIAS = 'limits' +authorize = extensions.os_compute_authorizer(ALIAS) + + +class LimitsController(wsgi.Controller): + """Controller for accessing limits in the OpenStack API.""" + + @extensions.expected_errors(()) + def index(self, req): + """Return all global and rate limit information.""" + context = req.environ['nova.context'] + authorize(context) + project_id = req.params.get('tenant_id', context.project_id) + quotas = QUOTAS.get_project_quotas(context, project_id, + usages=False) + abs_limits = {k: v['limit'] for k, v in quotas.items()} + rate_limits = req.environ.get("nova.limits", []) + + builder = self._get_view_builder(req) + return builder.build(rate_limits, abs_limits) + + def _get_view_builder(self, req): + return limits_views.ViewBuilderV3() + + +class Limits(extensions.V3APIExtensionBase): + """Limits support.""" + + name = "Limits" + alias = ALIAS + version = 1 + + def get_resources(self): + resource = [extensions.ResourceExtension(ALIAS, + LimitsController())] + return resource + + def get_controller_extensions(self): + return [] diff --git a/nova/api/openstack/compute/plugins/v3/lock_server.py b/nova/api/openstack/compute/lock_server.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/lock_server.py rename to nova/api/openstack/compute/lock_server.py diff --git a/nova/api/openstack/compute/plugins/v3/migrate_server.py b/nova/api/openstack/compute/migrate_server.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/migrate_server.py rename to nova/api/openstack/compute/migrate_server.py diff --git a/nova/api/openstack/compute/plugins/v3/migrations.py b/nova/api/openstack/compute/migrations.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/migrations.py rename to nova/api/openstack/compute/migrations.py diff --git a/nova/api/openstack/compute/plugins/v3/multinic.py b/nova/api/openstack/compute/multinic.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/multinic.py rename to nova/api/openstack/compute/multinic.py diff --git a/nova/api/openstack/compute/plugins/v3/multiple_create.py b/nova/api/openstack/compute/multiple_create.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/multiple_create.py rename to nova/api/openstack/compute/multiple_create.py diff --git a/nova/api/openstack/compute/plugins/v3/networks.py b/nova/api/openstack/compute/networks.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/networks.py rename to nova/api/openstack/compute/networks.py diff --git a/nova/api/openstack/compute/plugins/v3/networks_associate.py b/nova/api/openstack/compute/networks_associate.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/networks_associate.py rename to nova/api/openstack/compute/networks_associate.py diff --git a/nova/api/openstack/compute/plugins/v3/pause_server.py b/nova/api/openstack/compute/pause_server.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/pause_server.py rename to nova/api/openstack/compute/pause_server.py diff --git a/nova/api/openstack/compute/plugins/v3/pci.py b/nova/api/openstack/compute/pci.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/pci.py rename to nova/api/openstack/compute/pci.py diff --git a/nova/api/openstack/compute/plugins/v3/personality.py b/nova/api/openstack/compute/personality.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/personality.py rename to nova/api/openstack/compute/personality.py diff --git a/nova/api/openstack/compute/plugins/__init__.py b/nova/api/openstack/compute/plugins/__init__.py deleted file mode 100644 index 1b57953423d2..000000000000 --- a/nova/api/openstack/compute/plugins/__init__.py +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 2013 IBM Corp. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -from oslo_log import log as logging - -from nova import exception -from nova.i18n import _LE - -LOG = logging.getLogger(__name__) - - -class LoadedExtensionInfo(object): - """Keep track of all loaded API extensions.""" - - def __init__(self): - self.extensions = {} - - def register_extension(self, ext): - if not self._check_extension(ext): - return False - - alias = ext.alias - - if alias in self.extensions: - raise exception.NovaException("Found duplicate extension: %s" - % alias) - self.extensions[alias] = ext - return True - - def _check_extension(self, extension): - """Checks for required methods in extension objects.""" - try: - extension.is_valid() - except AttributeError: - LOG.exception(_LE("Exception loading extension")) - return False - - return True - - def get_extensions(self): - return self.extensions diff --git a/nova/api/openstack/compute/plugins/v3/__init__.py b/nova/api/openstack/compute/plugins/v3/__init__.py deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/nova/api/openstack/compute/plugins/v3/limits.py b/nova/api/openstack/compute/plugins/v3/limits.py deleted file mode 100644 index 0fd5d762593e..000000000000 --- a/nova/api/openstack/compute/plugins/v3/limits.py +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 2011 OpenStack Foundation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - - -from nova.api.openstack.compute.views import limits as limits_views -from nova.api.openstack import extensions -from nova.api.openstack import wsgi -from nova import quota - - -QUOTAS = quota.QUOTAS -ALIAS = 'limits' -authorize = extensions.os_compute_authorizer(ALIAS) - - -class LimitsController(wsgi.Controller): - """Controller for accessing limits in the OpenStack API.""" - - @extensions.expected_errors(()) - def index(self, req): - """Return all global and rate limit information.""" - context = req.environ['nova.context'] - authorize(context) - project_id = req.params.get('tenant_id', context.project_id) - quotas = QUOTAS.get_project_quotas(context, project_id, - usages=False) - abs_limits = {k: v['limit'] for k, v in quotas.items()} - rate_limits = req.environ.get("nova.limits", []) - - builder = self._get_view_builder(req) - return builder.build(rate_limits, abs_limits) - - def _get_view_builder(self, req): - return limits_views.ViewBuilderV3() - - -class Limits(extensions.V3APIExtensionBase): - """Limits support.""" - - name = "Limits" - alias = ALIAS - version = 1 - - def get_resources(self): - resource = [extensions.ResourceExtension(ALIAS, - LimitsController())] - return resource - - def get_controller_extensions(self): - return [] diff --git a/nova/api/openstack/compute/plugins/v3/preserve_ephemeral_rebuild.py b/nova/api/openstack/compute/preserve_ephemeral_rebuild.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/preserve_ephemeral_rebuild.py rename to nova/api/openstack/compute/preserve_ephemeral_rebuild.py diff --git a/nova/api/openstack/compute/plugins/v3/quota_classes.py b/nova/api/openstack/compute/quota_classes.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/quota_classes.py rename to nova/api/openstack/compute/quota_classes.py diff --git a/nova/api/openstack/compute/plugins/v3/quota_sets.py b/nova/api/openstack/compute/quota_sets.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/quota_sets.py rename to nova/api/openstack/compute/quota_sets.py diff --git a/nova/api/openstack/compute/plugins/v3/remote_consoles.py b/nova/api/openstack/compute/remote_consoles.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/remote_consoles.py rename to nova/api/openstack/compute/remote_consoles.py diff --git a/nova/api/openstack/compute/plugins/v3/rescue.py b/nova/api/openstack/compute/rescue.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/rescue.py rename to nova/api/openstack/compute/rescue.py diff --git a/nova/api/openstack/compute/plugins/v3/scheduler_hints.py b/nova/api/openstack/compute/scheduler_hints.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/scheduler_hints.py rename to nova/api/openstack/compute/scheduler_hints.py diff --git a/nova/api/openstack/compute/plugins/v3/security_group_default_rules.py b/nova/api/openstack/compute/security_group_default_rules.py similarity index 98% rename from nova/api/openstack/compute/plugins/v3/security_group_default_rules.py rename to nova/api/openstack/compute/security_group_default_rules.py index d9c63f500a84..4ee59fa8133a 100644 --- a/nova/api/openstack/compute/plugins/v3/security_group_default_rules.py +++ b/nova/api/openstack/compute/security_group_default_rules.py @@ -14,7 +14,7 @@ from webob import exc -from nova.api.openstack.compute.plugins.v3 import security_groups as sg +from nova.api.openstack.compute import security_groups as sg from nova.api.openstack import extensions from nova.api.openstack import wsgi from nova import exception diff --git a/nova/api/openstack/compute/plugins/v3/security_groups.py b/nova/api/openstack/compute/security_groups.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/security_groups.py rename to nova/api/openstack/compute/security_groups.py diff --git a/nova/api/openstack/compute/plugins/v3/server_diagnostics.py b/nova/api/openstack/compute/server_diagnostics.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_diagnostics.py rename to nova/api/openstack/compute/server_diagnostics.py diff --git a/nova/api/openstack/compute/plugins/v3/server_external_events.py b/nova/api/openstack/compute/server_external_events.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_external_events.py rename to nova/api/openstack/compute/server_external_events.py diff --git a/nova/api/openstack/compute/plugins/v3/server_groups.py b/nova/api/openstack/compute/server_groups.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_groups.py rename to nova/api/openstack/compute/server_groups.py diff --git a/nova/api/openstack/compute/plugins/v3/server_metadata.py b/nova/api/openstack/compute/server_metadata.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_metadata.py rename to nova/api/openstack/compute/server_metadata.py diff --git a/nova/api/openstack/compute/plugins/v3/server_password.py b/nova/api/openstack/compute/server_password.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_password.py rename to nova/api/openstack/compute/server_password.py diff --git a/nova/api/openstack/compute/plugins/v3/server_usage.py b/nova/api/openstack/compute/server_usage.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/server_usage.py rename to nova/api/openstack/compute/server_usage.py diff --git a/nova/api/openstack/compute/plugins/v3/servers.py b/nova/api/openstack/compute/servers.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/servers.py rename to nova/api/openstack/compute/servers.py diff --git a/nova/api/openstack/compute/plugins/v3/services.py b/nova/api/openstack/compute/services.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/services.py rename to nova/api/openstack/compute/services.py diff --git a/nova/api/openstack/compute/plugins/v3/shelve.py b/nova/api/openstack/compute/shelve.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/shelve.py rename to nova/api/openstack/compute/shelve.py diff --git a/nova/api/openstack/compute/plugins/v3/simple_tenant_usage.py b/nova/api/openstack/compute/simple_tenant_usage.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/simple_tenant_usage.py rename to nova/api/openstack/compute/simple_tenant_usage.py diff --git a/nova/api/openstack/compute/plugins/v3/suspend_server.py b/nova/api/openstack/compute/suspend_server.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/suspend_server.py rename to nova/api/openstack/compute/suspend_server.py diff --git a/nova/api/openstack/compute/plugins/v3/tenant_networks.py b/nova/api/openstack/compute/tenant_networks.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/tenant_networks.py rename to nova/api/openstack/compute/tenant_networks.py diff --git a/nova/api/openstack/compute/plugins/v3/used_limits.py b/nova/api/openstack/compute/used_limits.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/used_limits.py rename to nova/api/openstack/compute/used_limits.py diff --git a/nova/api/openstack/compute/plugins/v3/user_data.py b/nova/api/openstack/compute/user_data.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/user_data.py rename to nova/api/openstack/compute/user_data.py diff --git a/nova/api/openstack/compute/plugins/v3/versions.py b/nova/api/openstack/compute/versionsV21.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/versions.py rename to nova/api/openstack/compute/versionsV21.py diff --git a/nova/api/openstack/compute/plugins/v3/virtual_interfaces.py b/nova/api/openstack/compute/virtual_interfaces.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/virtual_interfaces.py rename to nova/api/openstack/compute/virtual_interfaces.py diff --git a/nova/api/openstack/compute/plugins/v3/volumes.py b/nova/api/openstack/compute/volumes.py similarity index 100% rename from nova/api/openstack/compute/plugins/v3/volumes.py rename to nova/api/openstack/compute/volumes.py diff --git a/nova/api/opts.py b/nova/api/opts.py index dc2193069671..bffb77bc64ff 100644 --- a/nova/api/opts.py +++ b/nova/api/opts.py @@ -21,12 +21,12 @@ import nova.api.metadata.vendordata_json import nova.api.openstack import nova.api.openstack.common import nova.api.openstack.compute +import nova.api.openstack.compute.hide_server_addresses import nova.api.openstack.compute.legacy_v2.contrib import nova.api.openstack.compute.legacy_v2.contrib.fping import nova.api.openstack.compute.legacy_v2.contrib.os_tenant_networks import nova.api.openstack.compute.legacy_v2.extensions import nova.api.openstack.compute.legacy_v2.servers -import nova.api.openstack.compute.plugins.v3.hide_server_addresses import nova.availability_zones import nova.baserpc import nova.cells.manager @@ -139,7 +139,7 @@ def list_opts(): nova.api.openstack.compute.legacy_v2.contrib.os_tenant_networks. os_network_opts, nova.api.openstack.compute.legacy_v2.extensions.ext_opts, - nova.api.openstack.compute.plugins.v3.hide_server_addresses.opts, + nova.api.openstack.compute.hide_server_addresses.opts, nova.api.openstack.compute.legacy_v2.servers.server_opts, )), ('neutron', nova.api.metadata.handler.metadata_proxy_opts), diff --git a/nova/hacking/checks.py b/nova/hacking/checks.py index 5696ab8ccf61..cc67db6d708c 100644 --- a/nova/hacking/checks.py +++ b/nova/hacking/checks.py @@ -513,7 +513,8 @@ def check_http_not_implemented(logical_line, physical_line, filename): " common raise_feature_not_supported().") if pep8.noqa(physical_line): return - if "nova/api/openstack/compute/plugins/v3" not in filename: + if ("nova/api/openstack/compute/legacy_v2" in filename or + "nova/api/openstack/compute" not in filename): return if re.match(http_not_implemented_re, logical_line): yield(0, msg) diff --git a/nova/tests/functional/v3/test_baremetal_nodes.py b/nova/tests/functional/v3/test_baremetal_nodes.py index 30cec0d594bb..417f49919d78 100644 --- a/nova/tests/functional/v3/test_baremetal_nodes.py +++ b/nova/tests/functional/v3/test_baremetal_nodes.py @@ -63,7 +63,7 @@ class BareMetalNodesSampleJsonTest(api_sample_base.ApiSampleTestBaseV3): 'contrib.baremetal_nodes.Baremetal_nodes') return f - @mock.patch("nova.api.openstack.compute.plugins.v3.baremetal_nodes" + @mock.patch("nova.api.openstack.compute.baremetal_nodes" "._get_ironic_client") @mock.patch("nova.api.openstack.compute.legacy_v2.contrib.baremetal_nodes" "._get_ironic_client") @@ -75,7 +75,7 @@ class BareMetalNodesSampleJsonTest(api_sample_base.ApiSampleTestBaseV3): subs = self._get_regexes() self._verify_response('baremetal-node-list-resp', subs, response, 200) - @mock.patch("nova.api.openstack.compute.plugins.v3.baremetal_nodes" + @mock.patch("nova.api.openstack.compute.baremetal_nodes" "._get_ironic_client") @mock.patch("nova.api.openstack.compute.legacy_v2.contrib.baremetal_nodes" "._get_ironic_client") diff --git a/nova/tests/functional/v3/test_fping.py b/nova/tests/functional/v3/test_fping.py index b3ad226df74f..2289ed487b95 100644 --- a/nova/tests/functional/v3/test_fping.py +++ b/nova/tests/functional/v3/test_fping.py @@ -15,8 +15,8 @@ from oslo_config import cfg +from nova.api.openstack.compute import fping from nova.api.openstack.compute.legacy_v2.contrib import fping as fping_v2 -from nova.api.openstack.compute.plugins.v3 import fping from nova.tests.functional.v3 import test_servers from nova.tests.unit.api.openstack.compute.contrib import test_fping from nova import utils diff --git a/nova/tests/functional/v3/test_hide_server_addresses.py b/nova/tests/functional/v3/test_hide_server_addresses.py index d9b355e042c1..20f1731b59cf 100644 --- a/nova/tests/functional/v3/test_hide_server_addresses.py +++ b/nova/tests/functional/v3/test_hide_server_addresses.py @@ -20,7 +20,7 @@ from nova.tests.functional.v3 import test_servers CONF = cfg.CONF CONF.import_opt('osapi_hide_server_address_states', - 'nova.api.openstack.compute.plugins.v3.hide_server_addresses') + 'nova.api.openstack.compute.hide_server_addresses') CONF.import_opt('osapi_compute_extension', 'nova.api.openstack.compute.legacy_v2.extensions') diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_access_ips.py b/nova/tests/unit/api/openstack/compute/contrib/test_access_ips.py index dfc80570cafd..70a3cf9dc166 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_access_ips.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_access_ips.py @@ -14,10 +14,10 @@ import webob +from nova.api.openstack.compute import access_ips +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import servers as servers_v20 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import access_ips -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.api.openstack import extensions as extensions_v20 from nova.api.openstack import wsgi from nova.compute import api as compute_api @@ -178,7 +178,7 @@ class AccessIPsExtAPIValidationTestV21(test.TestCase): self.req = fakes.HTTPRequest.blank('') def _set_up_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers_v21.ServersController( extension_info=ext_info) diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_admin_actions.py b/nova/tests/unit/api/openstack/compute/contrib/test_admin_actions.py index 8335e99a27da..e9e894be7b9a 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_admin_actions.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_admin_actions.py @@ -12,10 +12,9 @@ # License for the specific language governing permissions and limitations # under the License. -from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ - admin_actions_v2 -from nova.api.openstack.compute.plugins.v3 import admin_actions as \ - admin_actions_v21 +from nova.api.openstack.compute import admin_actions as admin_actions_v21 +from nova.api.openstack.compute.legacy_v2.contrib import admin_actions \ + as admin_actions_v2 from nova import exception from nova import test from nova.tests.unit.api.openstack.compute import admin_only_action_common diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_admin_password.py b/nova/tests/unit/api/openstack/compute/contrib/test_admin_password.py index 7dde133eb19b..9f7d4e4b0e4d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_admin_password.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_admin_password.py @@ -16,9 +16,8 @@ import mock import webob +from nova.api.openstack.compute import admin_password as admin_password_v21 from nova.api.openstack.compute.legacy_v2 import servers -from nova.api.openstack.compute.plugins.v3 import admin_password \ - as admin_password_v21 from nova.compute import api as compute_api from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_agents.py b/nova/tests/unit/api/openstack/compute/contrib/test_agents.py index a4151591860f..4f8214014c12 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_agents.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_agents.py @@ -15,8 +15,8 @@ import mock import webob.exc +from nova.api.openstack.compute import agents as agents_v21 from nova.api.openstack.compute.legacy_v2.contrib import agents as agents_v2 -from nova.api.openstack.compute.plugins.v3 import agents as agents_v21 from nova import db from nova.db.sqlalchemy import models from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_aggregates.py b/nova/tests/unit/api/openstack/compute/contrib/test_aggregates.py index 316ee4f2fa7c..f64917f14301 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_aggregates.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_aggregates.py @@ -18,9 +18,9 @@ import mock from webob import exc +from nova.api.openstack.compute import aggregates as aggregates_v21 from nova.api.openstack.compute.legacy_v2.contrib import aggregates \ as aggregates_v2 -from nova.api.openstack.compute.plugins.v3 import aggregates as aggregates_v21 from nova import context from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_attach_interfaces.py b/nova/tests/unit/api/openstack/compute/contrib/test_attach_interfaces.py index 4887eaccf4e3..22efe32dbfc7 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_attach_interfaces.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_attach_interfaces.py @@ -16,10 +16,10 @@ import mock from oslo_config import cfg +from nova.api.openstack.compute import attach_interfaces \ + as attach_interfaces_v21 from nova.api.openstack.compute.legacy_v2.contrib import attach_interfaces \ - as attach_interfaces_v2 -from nova.api.openstack.compute.plugins.v3 import attach_interfaces \ - as attach_interfaces_v21 + as attach_interfaces_v2 from nova.compute import api as compute_api from nova import exception from nova.network import api as network_api diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_availability_zone.py b/nova/tests/unit/api/openstack/compute/contrib/test_availability_zone.py index 15d29de324ca..643a5a87ca7b 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_availability_zone.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_availability_zone.py @@ -13,15 +13,14 @@ # under the License. import datetime - - import iso8601 + +from nova.api.openstack.compute import availability_zone as az_v21 +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2.contrib import availability_zone \ as az_v2 from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import availability_zone as az_v21 -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.api.openstack import extensions from nova import availability_zones from nova.compute import api as compute_api @@ -237,7 +236,7 @@ class ServersControllerCreateTestV21(test.TestCase): self.req = fakes.HTTPRequest.blank('') def _set_up_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers_v21.ServersController( extension_info=ext_info) CONF.set_override('extensions_blacklist', diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_baremetal_nodes.py b/nova/tests/unit/api/openstack/compute/contrib/test_baremetal_nodes.py index eb23a14cb27d..c5775653d18c 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_baremetal_nodes.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_baremetal_nodes.py @@ -19,10 +19,10 @@ from webob import exc from ironicclient import exc as ironic_exc +from nova.api.openstack.compute import baremetal_nodes \ + as b_nodes_v21 from nova.api.openstack.compute.legacy_v2.contrib import baremetal_nodes \ as b_nodes_v2 -from nova.api.openstack.compute.plugins.v3 import baremetal_nodes \ - as b_nodes_v21 from nova.api.openstack import extensions from nova import context from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping.py b/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping.py index 2244e32c0515..1915c376f03e 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping.py @@ -20,11 +20,11 @@ from oslo_serialization import jsonutils from six.moves import range from webob import exc +from nova.api.openstack.compute import block_device_mapping +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import extensions from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import block_device_mapping -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova import block_device from nova.compute import api as compute_api from nova import exception @@ -41,7 +41,7 @@ class BlockDeviceMappingTestV21(test.TestCase): validation_error = exception.ValidationError def _setup_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers_v21.ServersController( extension_info=ext_info) CONF.set_override('extensions_blacklist', 'os-block-device-mapping', diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping_v1.py b/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping_v1.py index d0c864c7cfe5..891412363661 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping_v1.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_block_device_mapping_v1.py @@ -19,12 +19,12 @@ from oslo_config import cfg from oslo_serialization import jsonutils from webob import exc +from nova.api.openstack.compute import block_device_mapping_v1 \ + as block_device_mapping +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import extensions from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import block_device_mapping_v1 as \ - block_device_mapping -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.compute import api as compute_api from nova import exception from nova import test @@ -38,7 +38,7 @@ class BlockDeviceMappingTestV21(test.TestCase): validation_error = exception.ValidationError def _setup_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() CONF.set_override('extensions_blacklist', 'os-block-device-mapping', 'osapi_v3') self.controller = servers_v21.ServersController( @@ -295,7 +295,7 @@ class BlockDeviceMappingTestV21(test.TestCase): self._test_create(params) def test_create_instance_decide_format_legacy(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() CONF.set_override('extensions_blacklist', ['os-block-device-mapping', 'os-block-device-mapping-v1'], @@ -327,7 +327,7 @@ class BlockDeviceMappingTestV21(test.TestCase): self._test_create(params, override_controller=controller) def test_create_instance_both_bdm_formats(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() CONF.set_override('extensions_blacklist', '', 'osapi_v3') both_controllers = servers_v21.ServersController( extension_info=ext_info) diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_cells.py b/nova/tests/unit/api/openstack/compute/contrib/test_cells.py index fb0431e15fcd..b3b5a9615414 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_cells.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_cells.py @@ -18,8 +18,8 @@ import copy from oslo_utils import timeutils from webob import exc +from nova.api.openstack.compute import cells as cells_ext_v21 from nova.api.openstack.compute.legacy_v2.contrib import cells as cells_ext_v2 -from nova.api.openstack.compute.plugins.v3 import cells as cells_ext_v21 from nova.api.openstack import extensions from nova.cells import rpcapi as cells_rpcapi from nova import context diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_certificates.py b/nova/tests/unit/api/openstack/compute/contrib/test_certificates.py index 6541168153ca..05fca35ae605 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_certificates.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_certificates.py @@ -18,10 +18,10 @@ import mock from mox3 import mox from webob import exc +from nova.api.openstack.compute import certificates \ + as certificates_v21 from nova.api.openstack.compute.legacy_v2.contrib import certificates \ as certificates_v2 -from nova.api.openstack.compute.plugins.v3 import certificates \ - as certificates_v21 from nova.cert import rpcapi from nova import context from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe.py b/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe.py index 176966c3540a..73835d9bd237 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe.py @@ -19,9 +19,9 @@ from oslo_config import cfg from oslo_utils import timeutils from webob import exc +from nova.api.openstack.compute import cloudpipe as cloudpipe_v21 from nova.api.openstack.compute.legacy_v2.contrib import cloudpipe \ as cloudpipe_v2 -from nova.api.openstack.compute.plugins.v3 import cloudpipe as cloudpipe_v21 from nova.compute import utils as compute_utils from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe_update.py b/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe_update.py index 3f254e8fc3a2..c28ed6fe2789 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe_update.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_cloudpipe_update.py @@ -14,9 +14,9 @@ import webob +from nova.api.openstack.compute import cloudpipe as clup_v21 from nova.api.openstack.compute.legacy_v2.contrib import cloudpipe_update \ as clup_v2 -from nova.api.openstack.compute.plugins.v3 import cloudpipe as clup_v21 from nova import db from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_config_drive.py b/nova/tests/unit/api/openstack/compute/contrib/test_config_drive.py index ef7080c18a58..3be690ef675f 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_config_drive.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_config_drive.py @@ -19,9 +19,9 @@ from oslo_config import cfg from oslo_serialization import jsonutils import webob +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.api.openstack import extensions from nova.compute import api as compute_api from nova.compute import flavors @@ -91,7 +91,7 @@ class ServersControllerCreateTestV21(test.TestCase): bad_request = exception.ValidationError def _set_up_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers_v21.ServersController( extension_info=ext_info) CONF.set_override('extensions_blacklist', diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_console_auth_tokens.py b/nova/tests/unit/api/openstack/compute/contrib/test_console_auth_tokens.py index 09f2d3c379e2..c6333aac2ed0 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_console_auth_tokens.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_console_auth_tokens.py @@ -18,10 +18,10 @@ import copy from oslo_config import cfg import webob +from nova.api.openstack.compute import console_auth_tokens \ + as console_auth_tokens_v21 from nova.api.openstack.compute.legacy_v2.contrib import console_auth_tokens \ - as console_auth_tokens_v2 -from nova.api.openstack.compute.plugins.v3 import console_auth_tokens \ - as console_auth_tokens_v21 + as console_auth_tokens_v2 from nova.consoleauth import rpcapi as consoleauth_rpcapi from nova import test from nova.tests.unit.api.openstack import fakes diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_console_output.py b/nova/tests/unit/api/openstack/compute/contrib/test_console_output.py index 4464efa89d91..42664fc083c3 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_console_output.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_console_output.py @@ -17,10 +17,10 @@ import string import webob +from nova.api.openstack.compute import console_output \ + as console_output_v21 from nova.api.openstack.compute.legacy_v2.contrib import console_output \ - as console_output_v2 -from nova.api.openstack.compute.plugins.v3 import console_output \ - as console_output_v21 + as console_output_v2 from nova.compute import api as compute_api from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_consoles.py b/nova/tests/unit/api/openstack/compute/contrib/test_consoles.py index 21db38be276f..f6774df66d50 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_consoles.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_consoles.py @@ -19,7 +19,7 @@ import webob from nova.api.openstack import api_version_request from nova.api.openstack.compute.legacy_v2.contrib import consoles \ as console_v2 -from nova.api.openstack.compute.plugins.v3 import remote_consoles \ +from nova.api.openstack.compute import remote_consoles \ as console_v21 from nova.compute import api as compute_api from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_create_backup.py b/nova/tests/unit/api/openstack/compute/contrib/test_create_backup.py index 87d01ffdecbd..f75d67a67e85 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_create_backup.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_create_backup.py @@ -16,10 +16,10 @@ import webob from nova.api.openstack import common -from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ - create_backup_v2 -from nova.api.openstack.compute.plugins.v3 import create_backup as \ - create_backup_v21 +from nova.api.openstack.compute import create_backup \ + as create_backup_v21 +from nova.api.openstack.compute.legacy_v2.contrib import admin_actions \ + as create_backup_v2 from nova import exception from nova import test from nova.tests.unit.api.openstack.compute import admin_only_action_common diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_deferred_delete.py b/nova/tests/unit/api/openstack/compute/contrib/test_deferred_delete.py index 3f89330e0ac3..e4b725775f35 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_deferred_delete.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_deferred_delete.py @@ -16,8 +16,8 @@ import mock import webob +from nova.api.openstack.compute import deferred_delete as dd_v21 from nova.api.openstack.compute.legacy_v2.contrib import deferred_delete -from nova.api.openstack.compute.plugins.v3 import deferred_delete as dd_v21 from nova.compute import api as compute_api from nova import context from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_evacuate.py b/nova/tests/unit/api/openstack/compute/contrib/test_evacuate.py index 84a3e0fa4341..12333f287f5a 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_evacuate.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_evacuate.py @@ -18,9 +18,9 @@ import mock from oslo_config import cfg import webob +from nova.api.openstack.compute import evacuate as evacuate_v21 from nova.api.openstack.compute.legacy_v2.contrib import evacuate \ as evacuate_v2 -from nova.api.openstack.compute.plugins.v3 import evacuate as evacuate_v21 from nova.api.openstack import extensions from nova.compute import api as compute_api from nova.compute import vm_states diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_extended_hypervisors.py b/nova/tests/unit/api/openstack/compute/contrib/test_extended_hypervisors.py index f4b9ebf3c591..686f626d706e 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_extended_hypervisors.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_extended_hypervisors.py @@ -16,10 +16,10 @@ import copy import mock +from nova.api.openstack.compute import hypervisors \ + as hypervisors_v21 from nova.api.openstack.compute.legacy_v2.contrib import hypervisors \ as hypervisors_v2 -from nova.api.openstack.compute.plugins.v3 import hypervisors \ - as hypervisors_v21 from nova.api.openstack import extensions from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_extended_volumes.py b/nova/tests/unit/api/openstack/compute/contrib/test_extended_volumes.py index 28f91e9e2b93..4b97f05cf760 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_extended_volumes.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_extended_volumes.py @@ -17,7 +17,7 @@ import mock from oslo_serialization import jsonutils import webob -from nova.api.openstack.compute.plugins.v3 import (extended_volumes +from nova.api.openstack.compute import (extended_volumes as extended_volumes_v21) from nova.api.openstack import wsgi as os_wsgi from nova import compute diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_extension_info.py b/nova/tests/unit/api/openstack/compute/contrib/test_extension_info.py index 34d8e9daa9ac..5f2513527ca6 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_extension_info.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_extension_info.py @@ -16,8 +16,7 @@ import copy import webob -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import extension_info +from nova.api.openstack.compute import extension_info from nova import exception from nova import policy from nova import test @@ -69,7 +68,7 @@ class ExtensionInfoTest(test.NoDBTestCase): def setUp(self): super(ExtensionInfoTest, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() ext_info.extensions = fake_extensions self.controller = extension_info.ExtensionInfoController(ext_info) @@ -124,7 +123,7 @@ class ExtensionInfoV21Test(test.NoDBTestCase): def setUp(self): super(ExtensionInfoV21Test, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() ext_info.extensions = simulated_extension_list self.controller = extension_info.ExtensionInfoController(ext_info) self.stubs.Set(policy, 'enforce', fake_policy_enforce) @@ -190,7 +189,7 @@ class ExtensionInfoPolicyEnforcementV21(test.NoDBTestCase): def setUp(self): super(ExtensionInfoPolicyEnforcementV21, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() ext_info.extensions = fake_extensions self.controller = extension_info.ExtensionInfoController(ext_info) self.req = fakes.HTTPRequest.blank('') diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_fixed_ips.py b/nova/tests/unit/api/openstack/compute/contrib/test_fixed_ips.py index 7891991a32d8..1145d67fb2a0 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_fixed_ips.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_fixed_ips.py @@ -15,9 +15,9 @@ import webob from nova.api.openstack import api_version_request +from nova.api.openstack.compute import fixed_ips as fixed_ips_v21 from nova.api.openstack.compute.legacy_v2.contrib import fixed_ips \ as fixed_ips_v2 -from nova.api.openstack.compute.plugins.v3 import fixed_ips as fixed_ips_v21 from nova.api.openstack import wsgi as os_wsgi from nova import context from nova import db diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_flavor_access.py b/nova/tests/unit/api/openstack/compute/contrib/test_flavor_access.py index b657243fe60f..e463dc64cb90 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_flavor_access.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_flavor_access.py @@ -20,11 +20,11 @@ import six from webob import exc from nova.api.openstack import api_version_request as api_version +from nova.api.openstack.compute import flavor_access \ + as flavor_access_v21 from nova.api.openstack.compute.legacy_v2.contrib import flavor_access \ - as flavor_access_v2 + as flavor_access_v2 from nova.api.openstack.compute.legacy_v2 import flavors as flavors_api -from nova.api.openstack.compute.plugins.v3 import flavor_access \ - as flavor_access_v21 from nova import context from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_flavor_manage.py b/nova/tests/unit/api/openstack/compute/contrib/test_flavor_manage.py index 2f0e5618698f..0079860723a9 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_flavor_manage.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_flavor_manage.py @@ -20,14 +20,12 @@ from oslo_serialization import jsonutils import six import webob -from nova.api.openstack.compute.legacy_v2.contrib import flavor_access as \ - flavor_access_v2 -from nova.api.openstack.compute.legacy_v2.contrib import flavormanage as \ - flavormanage_v2 -from nova.api.openstack.compute.plugins.v3 import flavor_access as \ - flavor_access_v21 -from nova.api.openstack.compute.plugins.v3 import flavor_manage as \ - flavormanage_v21 +from nova.api.openstack.compute import flavor_access as flavor_access_v21 +from nova.api.openstack.compute import flavor_manage as flavormanage_v21 +from nova.api.openstack.compute.legacy_v2.contrib import flavor_access \ + as flavor_access_v2 +from nova.api.openstack.compute.legacy_v2.contrib import flavormanage \ + as flavormanage_v2 from nova.compute import flavors from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_flavors_extra_specs.py b/nova/tests/unit/api/openstack/compute/contrib/test_flavors_extra_specs.py index f6e8352c5156..783b3af2895d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_flavors_extra_specs.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_flavors_extra_specs.py @@ -16,10 +16,10 @@ import mock import webob +from nova.api.openstack.compute import flavors_extraspecs \ + as flavorextraspecs_v21 from nova.api.openstack.compute.legacy_v2.contrib import flavorextraspecs \ - as flavorextraspecs_v2 -from nova.api.openstack.compute.plugins.v3 import flavors_extraspecs \ - as flavorextraspecs_v21 + as flavorextraspecs_v2 import nova.db from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_dns.py b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_dns.py index 16b481016b70..8186b2e568ce 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_dns.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_dns.py @@ -19,10 +19,10 @@ import urllib import mock import webob +from nova.api.openstack.compute import floating_ip_dns \ + as fipdns_v21 from nova.api.openstack.compute.legacy_v2.contrib import floating_ip_dns \ as fipdns_v2 -from nova.api.openstack.compute.plugins.v3 import floating_ip_dns \ - as fipdns_v21 from nova import context from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_pools.py b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_pools.py index 5a451be5f417..6ae8df16fa34 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_pools.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ip_pools.py @@ -13,10 +13,10 @@ # License for the specific language governing permissions and limitations # under the License. +from nova.api.openstack.compute import floating_ip_pools \ + as fipp_v21 from nova.api.openstack.compute.legacy_v2.contrib import floating_ip_pools \ as fipp_v2 -from nova.api.openstack.compute.plugins.v3 import floating_ip_pools \ - as fipp_v21 from nova import context from nova import exception from nova import network diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips.py b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips.py index 114579616df8..2b0fe0bce33d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips.py @@ -20,9 +20,9 @@ import uuid import mock import webob +from nova.api.openstack.compute import floating_ips as fips_v21 from nova.api.openstack.compute.legacy_v2.contrib import floating_ips \ as fips_v2 -from nova.api.openstack.compute.plugins.v3 import floating_ips as fips_v21 from nova.api.openstack import extensions from nova import compute from nova.compute import utils as compute_utils diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips_bulk.py b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips_bulk.py index 465edfe53218..377c3b00455d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips_bulk.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_floating_ips_bulk.py @@ -17,10 +17,10 @@ import netaddr from oslo_config import cfg import webob +from nova.api.openstack.compute import floating_ips_bulk \ + as fipbulk_v21 from nova.api.openstack.compute.legacy_v2.contrib import floating_ips_bulk \ as fipbulk_v2 -from nova.api.openstack.compute.plugins.v3 import floating_ips_bulk \ - as fipbulk_v21 from nova import context from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_fping.py b/nova/tests/unit/api/openstack/compute/contrib/test_fping.py index 6c59a396cdaa..de4380c622af 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_fping.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_fping.py @@ -17,8 +17,8 @@ import mock import webob +from nova.api.openstack.compute import fping as fping_v21 from nova.api.openstack.compute.legacy_v2.contrib import fping -from nova.api.openstack.compute.plugins.v3 import fping as fping_v21 from nova import exception from nova import test from nova.tests.unit.api.openstack import fakes diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_hosts.py b/nova/tests/unit/api/openstack/compute/contrib/test_hosts.py index 75a97a1403b8..948cbe3a2e1b 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_hosts.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_hosts.py @@ -16,8 +16,8 @@ import testtools import webob.exc +from nova.api.openstack.compute import hosts as os_hosts_v21 from nova.api.openstack.compute.legacy_v2.contrib import hosts as os_hosts_v2 -from nova.api.openstack.compute.plugins.v3 import hosts as os_hosts_v21 from nova.compute import power_state from nova.compute import vm_states from nova import context as context_maker diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_hypervisor_status.py b/nova/tests/unit/api/openstack/compute/contrib/test_hypervisor_status.py index 2a973c0c84e7..8b247fd24e09 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_hypervisor_status.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_hypervisor_status.py @@ -16,10 +16,10 @@ import copy import mock +from nova.api.openstack.compute import hypervisors \ + as hypervisors_v21 from nova.api.openstack.compute.legacy_v2.contrib import hypervisors \ as hypervisors_v2 -from nova.api.openstack.compute.plugins.v3 import hypervisors \ - as hypervisors_v21 from nova.api.openstack import extensions from nova import objects from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_hypervisors.py b/nova/tests/unit/api/openstack/compute/contrib/test_hypervisors.py index 20f21fe30491..0961f42ab495 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_hypervisors.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_hypervisors.py @@ -18,10 +18,10 @@ import mock import netaddr from webob import exc +from nova.api.openstack.compute import hypervisors \ + as hypervisors_v21 from nova.api.openstack.compute.legacy_v2.contrib import hypervisors \ as hypervisors_v2 -from nova.api.openstack.compute.plugins.v3 import hypervisors \ - as hypervisors_v21 from nova.api.openstack import extensions from nova.cells import utils as cells_utils from nova import context diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_instance_actions.py b/nova/tests/unit/api/openstack/compute/contrib/test_instance_actions.py index a7a3353a6225..98d4d21bafbd 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_instance_actions.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_instance_actions.py @@ -19,10 +19,9 @@ import uuid import six from webob import exc +from nova.api.openstack.compute import instance_actions as instance_actions_v21 from nova.api.openstack.compute.legacy_v2.contrib import instance_actions \ - as instance_actions_v2 -from nova.api.openstack.compute.plugins.v3 import instance_actions \ - as instance_actions_v21 + as instance_actions_v2 from nova.compute import api as compute_api from nova import db from nova.db.sqlalchemy import models diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_instance_usage_audit_log.py b/nova/tests/unit/api/openstack/compute/contrib/test_instance_usage_audit_log.py index 8a91192c0788..918c5855f231 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_instance_usage_audit_log.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_instance_usage_audit_log.py @@ -17,10 +17,9 @@ import datetime from oslo_utils import timeutils +from nova.api.openstack.compute import instance_usage_audit_log as v21_ial from nova.api.openstack.compute.legacy_v2.contrib \ import instance_usage_audit_log as ial -from nova.api.openstack.compute.plugins.v3 import instance_usage_audit_log \ - as v21_ial from nova import context from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_keypairs.py b/nova/tests/unit/api/openstack/compute/contrib/test_keypairs.py index 5230c92e8086..a5252bb7b9b9 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_keypairs.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_keypairs.py @@ -17,9 +17,9 @@ import mock from oslo_serialization import jsonutils import webob +from nova.api.openstack.compute import keypairs as keypairs_v21 from nova.api.openstack.compute.legacy_v2.contrib import keypairs \ - as keypairs_v2 -from nova.api.openstack.compute.plugins.v3 import keypairs as keypairs_v21 + as keypairs_v2 from nova.api.openstack import wsgi as os_wsgi from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_lock_server.py b/nova/tests/unit/api/openstack/compute/contrib/test_lock_server.py index 95ddea6649d2..d39852579f14 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_lock_server.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_lock_server.py @@ -18,10 +18,9 @@ import webob import mock from nova.api.openstack import common -from nova.api.openstack.compute.legacy_v2.contrib import (admin_actions as - lock_server_v2) -from nova.api.openstack.compute.plugins.v3 import (lock_server as - lock_server_v21) +from nova.api.openstack.compute.legacy_v2.contrib import admin_actions \ + as lock_server_v2 +from nova.api.openstack.compute import lock_server as lock_server_v21 from nova import context from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_migrate_server.py b/nova/tests/unit/api/openstack/compute/contrib/test_migrate_server.py index 8dcbe2eb0df3..34027e861180 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_migrate_server.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_migrate_server.py @@ -19,7 +19,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ migrate_server_v2 -from nova.api.openstack.compute.plugins.v3 import migrate_server as \ +from nova.api.openstack.compute import migrate_server as \ migrate_server_v21 from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_migrations.py b/nova/tests/unit/api/openstack/compute/contrib/test_migrations.py index 5fe8a153fd28..9de4e7e38a4d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_migrations.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_migrations.py @@ -18,7 +18,7 @@ from oslotest import moxstubout from nova.api.openstack.compute.legacy_v2.contrib import migrations \ as migrations_v2 -from nova.api.openstack.compute.plugins.v3 import migrations as migrations_v21 +from nova.api.openstack.compute import migrations as migrations_v21 from nova import context from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_multinic.py b/nova/tests/unit/api/openstack/compute/contrib/test_multinic.py index bd4709c2ace7..b74c3c702e48 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_multinic.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_multinic.py @@ -18,7 +18,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import multinic \ as multinic_v2 -from nova.api.openstack.compute.plugins.v3 import multinic as multinic_v21 +from nova.api.openstack.compute import multinic as multinic_v21 from nova import compute from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_multiple_create.py b/nova/tests/unit/api/openstack/compute/contrib/test_multiple_create.py index 606cb8a3a93d..31a47524be1a 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_multiple_create.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_multiple_create.py @@ -19,13 +19,12 @@ import uuid from oslo_config import cfg import webob +from nova.api.openstack.compute import block_device_mapping \ + as block_device_mapping_v21 +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import servers as servers_v20 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import block_device_mapping as \ - block_device_mapping_v21 -from nova.api.openstack.compute.plugins.v3 import multiple_create as \ - multiple_create_v21 -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import multiple_create as multiple_create_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.api.openstack import extensions as extensions_v20 from nova.compute import api as compute_api from nova.compute import flavors @@ -62,7 +61,7 @@ class MultiCreateExtensionTestV21(test.TestCase): self.instance_cache_by_id = {} self.instance_cache_by_uuid = {} - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers_v21.ServersController( extension_info=ext_info) CONF.set_override('extensions_blacklist', 'os-multiple-create', diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_networks.py b/nova/tests/unit/api/openstack/compute/contrib/test_networks.py index 85f4ea055850..8c6620d72acd 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_networks.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_networks.py @@ -28,8 +28,8 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import networks_associate from nova.api.openstack.compute.legacy_v2.contrib import os_networks \ as networks -from nova.api.openstack.compute.plugins.v3 import networks as networks_v21 -from nova.api.openstack.compute.plugins.v3 import networks_associate \ +from nova.api.openstack.compute import networks as networks_v21 +from nova.api.openstack.compute import networks_associate \ as networks_associate_v21 from nova.api.openstack import extensions import nova.context diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_pause_server.py b/nova/tests/unit/api/openstack/compute/contrib/test_pause_server.py index 6474be80716c..3ed17471243e 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_pause_server.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_pause_server.py @@ -15,7 +15,7 @@ from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ pause_server_v2 -from nova.api.openstack.compute.plugins.v3 import pause_server as \ +from nova.api.openstack.compute import pause_server as \ pause_server_v21 from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_pci.py b/nova/tests/unit/api/openstack/compute/contrib/test_pci.py index 6eff3c13306f..f3dcfd21e951 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_pci.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_pci.py @@ -15,7 +15,7 @@ from webob import exc -from nova.api.openstack.compute.plugins.v3 import pci +from nova.api.openstack.compute import pci from nova.api.openstack import wsgi from nova import context from nova import db diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_quota_classes.py b/nova/tests/unit/api/openstack/compute/contrib/test_quota_classes.py index aa8cfbedcea8..92eb8f6396c3 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_quota_classes.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_quota_classes.py @@ -15,9 +15,9 @@ import webob +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2.contrib import quota_classes -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import quota_classes \ +from nova.api.openstack.compute import quota_classes \ as quota_classes_v21 from nova.api.openstack import extensions from nova import exception @@ -45,7 +45,7 @@ class QuotaClassSetsTestV21(test.TestCase): self._setup() def _setup(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = quota_classes_v21.QuotaClassSetsController( extension_info=ext_info) @@ -159,7 +159,7 @@ class QuotaClassesPolicyEnforcementV21(test.NoDBTestCase): def setUp(self): super(QuotaClassesPolicyEnforcementV21, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = quota_classes_v21.QuotaClassSetsController( extension_info=ext_info) self.req = fakes.HTTPRequest.blank('') diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_quotas.py b/nova/tests/unit/api/openstack/compute/contrib/test_quotas.py index 77c5269b5e4a..019de2116cbc 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_quotas.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_quotas.py @@ -20,7 +20,7 @@ import mock import webob from nova.api.openstack.compute.legacy_v2.contrib import quotas as quotas_v2 -from nova.api.openstack.compute.plugins.v3 import quota_sets as quotas_v21 +from nova.api.openstack.compute import quota_sets as quotas_v21 from nova.api.openstack import extensions from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_rescue.py b/nova/tests/unit/api/openstack/compute/contrib/test_rescue.py index b32aaf746a5d..3f37f3e8ff8a 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_rescue.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_rescue.py @@ -17,7 +17,7 @@ from oslo_config import cfg import webob from nova.api.openstack.compute.legacy_v2.contrib import rescue as rescue_v2 -from nova.api.openstack.compute.plugins.v3 import rescue as rescue_v21 +from nova.api.openstack.compute import rescue as rescue_v21 from nova.api.openstack import extensions from nova import compute from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_scheduler_hints.py b/nova/tests/unit/api/openstack/compute/contrib/test_scheduler_hints.py index 733f6dfee4ba..36c92ee258c3 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_scheduler_hints.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_scheduler_hints.py @@ -19,9 +19,9 @@ from oslo_config import cfg from oslo_serialization import jsonutils from nova.api.openstack import compute +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.api.openstack import extensions import nova.compute.api from nova.compute import flavors @@ -179,7 +179,7 @@ class ServersControllerCreateTestV21(test.TestCase): self.stubs.Set(db, 'instance_create', instance_create) def _set_up_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() CONF.set_override('extensions_blacklist', 'os-scheduler-hints', 'osapi_v3') self.no_scheduler_hints_controller = servers_v21.ServersController( diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_security_group_default_rules.py b/nova/tests/unit/api/openstack/compute/contrib/test_security_group_default_rules.py index 7e360a6566f9..f0bad162f0c4 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_security_group_default_rules.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_security_group_default_rules.py @@ -18,7 +18,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import \ security_group_default_rules as security_group_default_rules_v2 -from nova.api.openstack.compute.plugins.v3 import \ +from nova.api.openstack.compute import \ security_group_default_rules as security_group_default_rules_v21 from nova import context import nova.db diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_security_groups.py b/nova/tests/unit/api/openstack/compute/contrib/test_security_groups.py index c85974b20621..a17a010b6d3c 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_security_groups.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_security_groups.py @@ -21,7 +21,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import security_groups as \ secgroups_v2 -from nova.api.openstack.compute.plugins.v3 import security_groups as \ +from nova.api.openstack.compute import security_groups as \ secgroups_v21 from nova import compute from nova.compute import power_state diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_diagnostics.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_diagnostics.py index 229065c99b79..054779f41704 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_diagnostics.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_diagnostics.py @@ -17,7 +17,7 @@ import mock from oslo_serialization import jsonutils from nova.api.openstack import compute -from nova.api.openstack.compute.plugins.v3 import server_diagnostics +from nova.api.openstack.compute import server_diagnostics from nova.compute import api as compute_api from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_external_events.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_external_events.py index 54ea2e219a9e..7b35c094993b 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_external_events.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_external_events.py @@ -17,7 +17,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import server_external_events \ as server_external_events_v2 -from nova.api.openstack.compute.plugins.v3 import server_external_events \ +from nova.api.openstack.compute import server_external_events \ as server_external_events_v21 from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_group_quotas.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_group_quotas.py index efad708a46a6..5197116dde72 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_group_quotas.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_group_quotas.py @@ -18,7 +18,7 @@ from oslo_utils import uuidutils import webob from nova.api.openstack.compute.legacy_v2.contrib import server_groups -from nova.api.openstack.compute.plugins.v3 import server_groups as sg_v21 +from nova.api.openstack.compute import server_groups as sg_v21 from nova.api.openstack import extensions from nova import context import nova.db diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_groups.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_groups.py index f2f95d108629..e4408a45be38 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_groups.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_groups.py @@ -17,7 +17,7 @@ from oslo_utils import uuidutils import webob from nova.api.openstack.compute.legacy_v2.contrib import server_groups -from nova.api.openstack.compute.plugins.v3 import server_groups as sg_v21 +from nova.api.openstack.compute import server_groups as sg_v21 from nova.api.openstack import extensions from nova import context import nova.db diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_password.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_password.py index 083b183ad7ad..e2e0b5b6f948 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_password.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_password.py @@ -20,7 +20,7 @@ from oslo_config import cfg from nova.api.metadata import password from nova.api.openstack.compute.legacy_v2.contrib import server_password \ as server_password_v2 -from nova.api.openstack.compute.plugins.v3 import server_password \ +from nova.api.openstack.compute import server_password \ as server_password_v21 from nova import compute from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_reset_state.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_reset_state.py index 224f19a463ba..9da237df47dc 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_reset_state.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_reset_state.py @@ -15,10 +15,10 @@ from oslo_utils import uuidutils import webob -from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ - admin_actions_v2 -from nova.api.openstack.compute.plugins.v3 import admin_actions as \ - admin_actions_v21 +from nova.api.openstack.compute import admin_actions \ + as admin_actions_v21 +from nova.api.openstack.compute.legacy_v2.contrib import admin_actions \ + as admin_actions_v2 from nova.compute import vm_states from nova import exception from nova import objects diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_server_start_stop.py b/nova/tests/unit/api/openstack/compute/contrib/test_server_start_stop.py index a39d353b79d1..23ec8f642837 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_server_start_stop.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_server_start_stop.py @@ -15,11 +15,11 @@ from mox3 import mox import webob +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2.contrib import server_start_stop \ - as server_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import servers \ - as server_v21 + as server_v2 +from nova.api.openstack.compute import servers \ + as server_v21 from nova.compute import api as compute_api from nova import db from nova import exception @@ -63,7 +63,7 @@ class ServerStartStopTestV21(test.TestCase): self.req = fakes.HTTPRequest.blank('') def _setup_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = server_v21.ServersController( extension_info=ext_info) diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_services.py b/nova/tests/unit/api/openstack/compute/contrib/test_services.py index 11444b81bd8e..ce7e947460b8 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_services.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_services.py @@ -24,7 +24,7 @@ import webob.exc from nova.api.openstack import api_version_request as api_version from nova.api.openstack.compute.legacy_v2.contrib import services \ as services_v2 -from nova.api.openstack.compute.plugins.v3 import services as services_v21 +from nova.api.openstack.compute import services as services_v21 from nova.api.openstack import extensions from nova.api.openstack import wsgi as os_wsgi from nova import availability_zones diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_shelve.py b/nova/tests/unit/api/openstack/compute/contrib/test_shelve.py index 0f6a1bfe7542..82b630e0ebce 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_shelve.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_shelve.py @@ -17,7 +17,7 @@ import uuid import webob from nova.api.openstack.compute.legacy_v2.contrib import shelve as shelve_v2 -from nova.api.openstack.compute.plugins.v3 import shelve as shelve_v21 +from nova.api.openstack.compute import shelve as shelve_v21 from nova.compute import api as compute_api from nova import db from nova import exception diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_simple_tenant_usage.py b/nova/tests/unit/api/openstack/compute/contrib/test_simple_tenant_usage.py index 2456ad4d5471..74942d21972c 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_simple_tenant_usage.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_simple_tenant_usage.py @@ -22,7 +22,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import simple_tenant_usage as \ simple_tenant_usage_v2 -from nova.api.openstack.compute.plugins.v3 import simple_tenant_usage as \ +from nova.api.openstack.compute import simple_tenant_usage as \ simple_tenant_usage_v21 from nova.compute import flavors from nova.compute import vm_states diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_snapshots.py b/nova/tests/unit/api/openstack/compute/contrib/test_snapshots.py index bd70260d8946..41032f33c6dd 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_snapshots.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_snapshots.py @@ -17,7 +17,7 @@ import mock import webob from nova.api.openstack.compute.legacy_v2.contrib import volumes as volumes_v2 -from nova.api.openstack.compute.plugins.v3 import volumes as volumes_v21 +from nova.api.openstack.compute import volumes as volumes_v21 from nova import exception from nova import test from nova.tests.unit.api.openstack import fakes diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_suspend_server.py b/nova/tests/unit/api/openstack/compute/contrib/test_suspend_server.py index d36908bdf88f..a538b2d53d90 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_suspend_server.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_suspend_server.py @@ -14,7 +14,7 @@ from nova.api.openstack.compute.legacy_v2.contrib import admin_actions as \ suspend_server_v2 -from nova.api.openstack.compute.plugins.v3 import suspend_server as \ +from nova.api.openstack.compute import suspend_server as \ suspend_server_v21 from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_tenant_networks.py b/nova/tests/unit/api/openstack/compute/contrib/test_tenant_networks.py index 4b0a7ceb9b22..4f261850de72 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_tenant_networks.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_tenant_networks.py @@ -20,7 +20,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import os_tenant_networks \ as networks -from nova.api.openstack.compute.plugins.v3 import tenant_networks \ +from nova.api.openstack.compute import tenant_networks \ as networks_v21 from nova import exception from nova import test diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_used_limits.py b/nova/tests/unit/api/openstack/compute/contrib/test_used_limits.py index bacf0ab8c757..fc29a8d835a8 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_used_limits.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_used_limits.py @@ -17,7 +17,7 @@ import six from nova.api.openstack.compute.legacy_v2.contrib import used_limits \ as used_limits_v2 -from nova.api.openstack.compute.plugins.v3 import used_limits \ +from nova.api.openstack.compute import used_limits \ as used_limits_v21 from nova.api.openstack import extensions from nova.api.openstack import wsgi diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_virtual_interfaces.py b/nova/tests/unit/api/openstack/compute/contrib/test_virtual_interfaces.py index d43df93cf5be..a4a30ba05242 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_virtual_interfaces.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_virtual_interfaces.py @@ -17,7 +17,7 @@ import webob from nova.api.openstack.compute.legacy_v2.contrib import virtual_interfaces \ as vi20 -from nova.api.openstack.compute.plugins.v3 import virtual_interfaces as vi21 +from nova.api.openstack.compute import virtual_interfaces as vi21 from nova import compute from nova.compute import api as compute_api from nova import context diff --git a/nova/tests/unit/api/openstack/compute/contrib/test_volumes.py b/nova/tests/unit/api/openstack/compute/contrib/test_volumes.py index 9b255302515d..54f1af35a37d 100644 --- a/nova/tests/unit/api/openstack/compute/contrib/test_volumes.py +++ b/nova/tests/unit/api/openstack/compute/contrib/test_volumes.py @@ -23,12 +23,12 @@ from six.moves import urllib import webob from webob import exc +from nova.api.openstack.compute import assisted_volume_snapshots \ + as assisted_snaps_v21 from nova.api.openstack.compute.legacy_v2.contrib import \ assisted_volume_snapshots as assisted_snaps_v2 from nova.api.openstack.compute.legacy_v2.contrib import volumes -from nova.api.openstack.compute.plugins.v3 import assisted_volume_snapshots as \ - assisted_snaps_v21 -from nova.api.openstack.compute.plugins.v3 import volumes as volumes_v21 +from nova.api.openstack.compute import volumes as volumes_v21 from nova.api.openstack import extensions from nova.compute import api as compute_api from nova.compute import flavors diff --git a/nova/tests/unit/api/openstack/compute/plugins/v3/test_servers.py b/nova/tests/unit/api/openstack/compute/plugins/v3/test_servers.py index b497279d860b..df16f028e1e4 100644 --- a/nova/tests/unit/api/openstack/compute/plugins/v3/test_servers.py +++ b/nova/tests/unit/api/openstack/compute/plugins/v3/test_servers.py @@ -36,14 +36,14 @@ import webob from nova.api.openstack import api_version_request from nova.api.openstack import common from nova.api.openstack import compute -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import disk_config -from nova.api.openstack.compute.plugins.v3 import ips -from nova.api.openstack.compute.plugins.v3 import keypairs -from nova.api.openstack.compute.plugins.v3 import servers -from nova.api.openstack.compute.schemas.v3 import disk_config as \ - disk_config_schema +from nova.api.openstack.compute import disk_config +from nova.api.openstack.compute import extension_info +from nova.api.openstack.compute import ips +from nova.api.openstack.compute import keypairs +from nova.api.openstack.compute.schemas.v3 import disk_config \ + as disk_config_schema from nova.api.openstack.compute.schemas.v3 import servers as servers_schema +from nova.api.openstack.compute import servers from nova.api.openstack.compute import views from nova.api.openstack import extensions from nova.api.openstack import wsgi as os_wsgi @@ -147,7 +147,7 @@ class MockSetAdminPassword(object): class Base64ValidationTest(test.TestCase): def setUp(self): super(Base64ValidationTest, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) def test_decode_base64(self): @@ -204,7 +204,7 @@ class ControllerTest(test.TestCase): self.stubs.Set(db, 'instance_update_and_get_original', instance_update_and_get_original) - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) self.ips_controller = ips.IPsController() policy.reset() @@ -1502,8 +1502,8 @@ class ServersControllerRebuildInstanceTest(ControllerTest): vm_state=vm_states.ACTIVE) self.useFixture( - fixtures.MonkeyPatch('nova.api.openstack.compute.plugins.v3.' - 'servers.ServersController._get_instance', + fixtures.MonkeyPatch('nova.api.openstack.compute.servers.' + 'ServersController._get_instance', fake_get)) fake_get = fakes.fake_compute_get(vm_state=vm_states.ACTIVE) self.stubs.Set(compute_api.API, 'get', @@ -1881,7 +1881,7 @@ class ServerStatusTest(test.TestCase): super(ServerStatusTest, self).setUp() fakes.stub_out_nw_api(self.stubs) - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) def _get_with_state(self, vm_state, task_state=None): @@ -1995,7 +1995,7 @@ class ServersControllerCreateTest(test.TestCase): fakes.stub_out_nw_api(self.stubs) - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) def instance_create(context, inst): @@ -2866,7 +2866,7 @@ class ServersControllerCreateTestWithMock(test.TestCase): self.instance_cache_by_id = {} self.instance_cache_by_uuid = {} - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) self.body = { @@ -3489,7 +3489,7 @@ class ServersInvalidRequestTestCase(test.TestCase): def setUp(self): super(ServersInvalidRequestTestCase, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) def _invalid_server_create(self, body): @@ -3554,7 +3554,7 @@ class TestServersExtensionPoint(test.NoDBTestCase): def _test_load_extension_point(self, name): setattr(FakeExt, 'server_%s' % name, FakeExt.fake_extension_point) - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() controller = servers.ServersController(extension_info=ext_info) self.assertEqual( 'os-disk-config', @@ -3583,7 +3583,7 @@ class TestServersExtensionSchema(test.NoDBTestCase): def _test_load_extension_schema(self, name): setattr(FakeExt, 'get_server_%s_schema' % name, FakeExt.fake_extension_point) - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() controller = servers.ServersController(extension_info=ext_info) self.assertTrue(hasattr(controller, '%s_schema_manager' % name)) @@ -3666,7 +3666,7 @@ class ServersPolicyEnforcementV21(test.NoDBTestCase): def setUp(self): super(ServersPolicyEnforcementV21, self).setUp() - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() ext_info.extensions.update({'os-networks': 'fake'}) self.controller = servers.ServersController(extension_info=ext_info) self.req = fakes.HTTPRequest.blank('') diff --git a/nova/tests/unit/api/openstack/compute/plugins/v3/test_user_data.py b/nova/tests/unit/api/openstack/compute/plugins/v3/test_user_data.py index c749b1dad6e5..4e7eb2c712cf 100644 --- a/nova/tests/unit/api/openstack/compute/plugins/v3/test_user_data.py +++ b/nova/tests/unit/api/openstack/compute/plugins/v3/test_user_data.py @@ -21,9 +21,9 @@ import uuid from oslo_config import cfg from oslo_serialization import jsonutils -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import servers -from nova.api.openstack.compute.plugins.v3 import user_data +from nova.api.openstack.compute import extension_info +from nova.api.openstack.compute import servers +from nova.api.openstack.compute import user_data from nova.compute import api as compute_api from nova.compute import flavors from nova import db @@ -59,7 +59,7 @@ class ServersControllerCreateTest(test.TestCase): self.instance_cache_by_id = {} self.instance_cache_by_uuid = {} - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() self.controller = servers.ServersController(extension_info=ext_info) CONF.set_override('extensions_blacklist', 'os-user-data', 'osapi_v3') diff --git a/nova/tests/unit/api/openstack/compute/test_consoles.py b/nova/tests/unit/api/openstack/compute/test_consoles.py index 9a01df415049..bf6aa5766120 100644 --- a/nova/tests/unit/api/openstack/compute/test_consoles.py +++ b/nova/tests/unit/api/openstack/compute/test_consoles.py @@ -20,8 +20,8 @@ import uuid as stdlib_uuid from oslo_utils import timeutils import webob +from nova.api.openstack.compute import consoles as consoles_v21 from nova.api.openstack.compute.legacy_v2 import consoles as consoles_v2 -from nova.api.openstack.compute.plugins.v3 import consoles as consoles_v21 from nova.compute import vm_states from nova import console from nova import db diff --git a/nova/tests/unit/api/openstack/compute/test_flavors.py b/nova/tests/unit/api/openstack/compute/test_flavors.py index b6926b6bc24c..f2d393191b4c 100644 --- a/nova/tests/unit/api/openstack/compute/test_flavors.py +++ b/nova/tests/unit/api/openstack/compute/test_flavors.py @@ -18,8 +18,8 @@ import six.moves.urllib.parse as urlparse import webob from nova.api.openstack import common +from nova.api.openstack.compute import flavors as flavors_v21 from nova.api.openstack.compute.legacy_v2 import flavors as flavors_v2 -from nova.api.openstack.compute.plugins.v3 import flavors as flavors_v21 import nova.compute.flavors from nova import context from nova import db diff --git a/nova/tests/unit/api/openstack/compute/test_image_metadata.py b/nova/tests/unit/api/openstack/compute/test_image_metadata.py index 317f1d6c31ef..b249feeb253a 100644 --- a/nova/tests/unit/api/openstack/compute/test_image_metadata.py +++ b/nova/tests/unit/api/openstack/compute/test_image_metadata.py @@ -19,9 +19,8 @@ import mock from oslo_serialization import jsonutils import webob +from nova.api.openstack.compute import image_metadata as image_metadata_v21 from nova.api.openstack.compute.legacy_v2 import image_metadata -from nova.api.openstack.compute.plugins.v3 import image_metadata \ - as image_metadata_v21 from nova import exception from nova import test from nova.tests.unit.api.openstack import fakes diff --git a/nova/tests/unit/api/openstack/compute/test_images.py b/nova/tests/unit/api/openstack/compute/test_images.py index 6a139f072ee4..ff97c141b447 100644 --- a/nova/tests/unit/api/openstack/compute/test_images.py +++ b/nova/tests/unit/api/openstack/compute/test_images.py @@ -24,8 +24,8 @@ import mock import six.moves.urllib.parse as urlparse import webob +from nova.api.openstack.compute import images as images_v21 from nova.api.openstack.compute.legacy_v2 import images -from nova.api.openstack.compute.plugins.v3 import images as images_v21 from nova.api.openstack.compute.views import images as images_view from nova import exception from nova.image import glance diff --git a/nova/tests/unit/api/openstack/compute/test_limits.py b/nova/tests/unit/api/openstack/compute/test_limits.py index edcdcd219cb1..d08ea4d39e99 100644 --- a/nova/tests/unit/api/openstack/compute/test_limits.py +++ b/nova/tests/unit/api/openstack/compute/test_limits.py @@ -27,7 +27,7 @@ from six.moves import range import webob from nova.api.openstack.compute.legacy_v2 import limits -from nova.api.openstack.compute.plugins.v3 import limits as limits_v21 +from nova.api.openstack.compute import limits as limits_v21 from nova.api.openstack.compute import views from nova.api.openstack import wsgi import nova.context diff --git a/nova/tests/unit/api/openstack/compute/test_server_actions.py b/nova/tests/unit/api/openstack/compute/test_server_actions.py index 09ff1aaa0c23..88c1308b2f13 100644 --- a/nova/tests/unit/api/openstack/compute/test_server_actions.py +++ b/nova/tests/unit/api/openstack/compute/test_server_actions.py @@ -22,9 +22,9 @@ from oslo_config import cfg from oslo_utils import uuidutils import webob +from nova.api.openstack.compute import extension_info from nova.api.openstack.compute.legacy_v2 import servers as servers_v2 -from nova.api.openstack.compute import plugins -from nova.api.openstack.compute.plugins.v3 import servers as servers_v21 +from nova.api.openstack.compute import servers as servers_v21 from nova.compute import api as compute_api from nova.compute import task_states from nova.compute import vm_states @@ -105,7 +105,7 @@ class ServerActionsControllerTestV21(test.TestCase): self.context = self.req.environ['nova.context'] def _get_controller(self): - ext_info = plugins.LoadedExtensionInfo() + ext_info = extension_info.LoadedExtensionInfo() return self.servers.ServersController(extension_info=ext_info) def _set_fake_extension(self): diff --git a/nova/tests/unit/api/openstack/compute/test_server_metadata.py b/nova/tests/unit/api/openstack/compute/test_server_metadata.py index dbca384eab18..f1eb5712cbd9 100644 --- a/nova/tests/unit/api/openstack/compute/test_server_metadata.py +++ b/nova/tests/unit/api/openstack/compute/test_server_metadata.py @@ -24,7 +24,7 @@ import webob from nova.api.openstack.compute.legacy_v2 import server_metadata \ as server_metadata_v2 -from nova.api.openstack.compute.plugins.v3 import server_metadata \ +from nova.api.openstack.compute import server_metadata \ as server_metadata_v21 from nova.compute import rpcapi as compute_rpcapi from nova.compute import vm_states diff --git a/nova/tests/unit/api/openstack/compute/test_v21_extensions.py b/nova/tests/unit/api/openstack/compute/test_v21_extensions.py index 9a968ab03d28..966408bfd02a 100644 --- a/nova/tests/unit/api/openstack/compute/test_v21_extensions.py +++ b/nova/tests/unit/api/openstack/compute/test_v21_extensions.py @@ -20,7 +20,7 @@ import webob.exc from nova.api import openstack from nova.api.openstack import compute -from nova.api.openstack.compute import plugins +from nova.api.openstack.compute import extension_info from nova.api.openstack import extensions from nova import exception from nova import test @@ -67,8 +67,8 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): self.assertIn('servers', app._loaded_extension_info.extensions) def test_check_bad_extension(self): - extension_info = plugins.LoadedExtensionInfo() - self.assertFalse(extension_info._check_extension(fake_bad_extension)) + loaded_ext_info = extension_info.LoadedExtensionInfo() + self.assertFalse(loaded_ext_info._check_extension(fake_bad_extension)) def test_extensions_blacklist(self): app = compute.APIRouterV21() @@ -160,7 +160,7 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): def test_core_extensions_present(self): self.stubs.Set(stevedore.enabled, 'EnabledExtensionManager', fake_stevedore_enabled_extensions) - self.stubs.Set(plugins, 'LoadedExtensionInfo', + self.stubs.Set(extension_info, 'LoadedExtensionInfo', fake_loaded_extension_info) v21_core = openstack.API_V3_CORE_EXTENSIONS openstack.API_V3_CORE_EXTENSIONS = set(['core1', 'core2']) @@ -172,7 +172,7 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): def test_core_extensions_missing(self): self.stubs.Set(stevedore.enabled, 'EnabledExtensionManager', fake_stevedore_enabled_extensions) - self.stubs.Set(plugins, 'LoadedExtensionInfo', + self.stubs.Set(extension_info, 'LoadedExtensionInfo', fake_loaded_extension_info) self.assertRaises(exception.CoreAPIMissing, compute.APIRouterV21) diff --git a/nova/tests/unit/api/openstack/compute/test_v3_extensions.py b/nova/tests/unit/api/openstack/compute/test_v3_extensions.py index ad2ceb41903d..9f3d946d045c 100644 --- a/nova/tests/unit/api/openstack/compute/test_v3_extensions.py +++ b/nova/tests/unit/api/openstack/compute/test_v3_extensions.py @@ -18,7 +18,7 @@ import webob.exc from nova.api import openstack from nova.api.openstack import compute -from nova.api.openstack.compute import plugins +from nova.api.openstack.compute import extension_info from nova.api.openstack import extensions from nova import exception from nova import test @@ -65,8 +65,8 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): self.assertIn('servers', app._loaded_extension_info.extensions) def test_check_bad_extension(self): - extension_info = plugins.LoadedExtensionInfo() - self.assertFalse(extension_info._check_extension(fake_bad_extension)) + loaded_ext_info = extension_info.LoadedExtensionInfo() + self.assertFalse(loaded_ext_info._check_extension(fake_bad_extension)) def test_extensions_blacklist(self): app = compute.APIRouterV3() @@ -142,7 +142,7 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): def test_core_extensions_present(self): self.stubs.Set(stevedore.enabled, 'EnabledExtensionManager', fake_stevedore_enabled_extensions) - self.stubs.Set(plugins, 'LoadedExtensionInfo', + self.stubs.Set(extension_info, 'LoadedExtensionInfo', fake_loaded_extension_info) v3_core = openstack.API_V3_CORE_EXTENSIONS openstack.API_V3_CORE_EXTENSIONS = set(['core1', 'core2']) @@ -154,7 +154,7 @@ class ExtensionLoadingTestCase(test.NoDBTestCase): def test_core_extensions_missing(self): self.stubs.Set(stevedore.enabled, 'EnabledExtensionManager', fake_stevedore_enabled_extensions) - self.stubs.Set(plugins, 'LoadedExtensionInfo', + self.stubs.Set(extension_info, 'LoadedExtensionInfo', fake_loaded_extension_info) self.assertRaises(exception.CoreAPIMissing, compute.APIRouterV3) diff --git a/nova/tests/unit/test_hacking.py b/nova/tests/unit/test_hacking.py index b8e0e90c33e9..0a4a175e965d 100644 --- a/nova/tests/unit/test_hacking.py +++ b/nova/tests/unit/test_hacking.py @@ -518,7 +518,7 @@ class HackingTestCase(test.NoDBTestCase): except NotImplementedError: common.raise_http_not_implemented_error() """ - filename = "nova/api/openstack/compute/plugins/v3/test.py" + filename = "nova/api/openstack/compute/v21/test.py" self._assert_has_no_errors(code, checks.check_http_not_implemented, filename=filename) @@ -531,6 +531,6 @@ class HackingTestCase(test.NoDBTestCase): self._assert_has_errors(code, checks.check_http_not_implemented, expected_errors=errors, filename=filename) - filename = "nova/api/openstack/compute/legacy_v2/contrib/test.py" + filename = "nova/api/openstack/compute/legacy_v2/test.py" self._assert_has_no_errors(code, checks.check_http_not_implemented, filename=filename) diff --git a/setup.cfg b/setup.cfg index 58a27df52138..ea1be500e5fa 100644 --- a/setup.cfg +++ b/setup.cfg @@ -69,118 +69,118 @@ console_scripts = nova-xvpvncproxy = nova.cmd.xvpvncproxy:main nova.api.v3.extensions = - access_ips = nova.api.openstack.compute.plugins.v3.access_ips:AccessIPs - admin_actions = nova.api.openstack.compute.plugins.v3.admin_actions:AdminActions - admin_password = nova.api.openstack.compute.plugins.v3.admin_password:AdminPassword - agents = nova.api.openstack.compute.plugins.v3.agents:Agents - aggregates = nova.api.openstack.compute.plugins.v3.aggregates:Aggregates - assisted_volume_snapshots = nova.api.openstack.compute.plugins.v3.assisted_volume_snapshots:AssistedVolumeSnapshots - attach_interfaces = nova.api.openstack.compute.plugins.v3.attach_interfaces:AttachInterfaces - availability_zone = nova.api.openstack.compute.plugins.v3.availability_zone:AvailabilityZone - baremetal_nodes = nova.api.openstack.compute.plugins.v3.baremetal_nodes:BareMetalNodes - block_device_mapping = nova.api.openstack.compute.plugins.v3.block_device_mapping:BlockDeviceMapping - cells = nova.api.openstack.compute.plugins.v3.cells:Cells - certificates = nova.api.openstack.compute.plugins.v3.certificates:Certificates - cloudpipe = nova.api.openstack.compute.plugins.v3.cloudpipe:Cloudpipe - config_drive = nova.api.openstack.compute.plugins.v3.config_drive:ConfigDrive - console_auth_tokens = nova.api.openstack.compute.plugins.v3.console_auth_tokens:ConsoleAuthTokens - console_output = nova.api.openstack.compute.plugins.v3.console_output:ConsoleOutput - consoles = nova.api.openstack.compute.plugins.v3.consoles:Consoles - create_backup = nova.api.openstack.compute.plugins.v3.create_backup:CreateBackup - deferred_delete = nova.api.openstack.compute.plugins.v3.deferred_delete:DeferredDelete - disk_config = nova.api.openstack.compute.plugins.v3.disk_config:DiskConfig - evacuate = nova.api.openstack.compute.plugins.v3.evacuate:Evacuate - extended_availability_zone = nova.api.openstack.compute.plugins.v3.extended_availability_zone:ExtendedAvailabilityZone - extended_server_attributes = nova.api.openstack.compute.plugins.v3.extended_server_attributes:ExtendedServerAttributes - extended_status = nova.api.openstack.compute.plugins.v3.extended_status:ExtendedStatus - extended_volumes = nova.api.openstack.compute.plugins.v3.extended_volumes:ExtendedVolumes - extension_info = nova.api.openstack.compute.plugins.v3.extension_info:ExtensionInfo - fixed_ips = nova.api.openstack.compute.plugins.v3.fixed_ips:FixedIps - flavors = nova.api.openstack.compute.plugins.v3.flavors:Flavors - flavors_extraspecs = nova.api.openstack.compute.plugins.v3.flavors_extraspecs:FlavorsExtraSpecs - flavor_access = nova.api.openstack.compute.plugins.v3.flavor_access:FlavorAccess - flavor_rxtx = nova.api.openstack.compute.plugins.v3.flavor_rxtx:FlavorRxtx - flavor_manage = nova.api.openstack.compute.plugins.v3.flavor_manage:FlavorManage - floating_ip_dns = nova.api.openstack.compute.plugins.v3.floating_ip_dns:FloatingIpDns - floating_ip_pools = nova.api.openstack.compute.plugins.v3.floating_ip_pools:FloatingIpPools - floating_ips = nova.api.openstack.compute.plugins.v3.floating_ips:FloatingIps - floating_ips_bulk = nova.api.openstack.compute.plugins.v3.floating_ips_bulk:FloatingIpsBulk - fping = nova.api.openstack.compute.plugins.v3.fping:Fping - hide_server_addresses = nova.api.openstack.compute.plugins.v3.hide_server_addresses:HideServerAddresses - hosts = nova.api.openstack.compute.plugins.v3.hosts:Hosts - hypervisors = nova.api.openstack.compute.plugins.v3.hypervisors:Hypervisors - images = nova.api.openstack.compute.plugins.v3.images:Images - image_metadata = nova.api.openstack.compute.plugins.v3.image_metadata:ImageMetadata - image_size = nova.api.openstack.compute.plugins.v3.image_size:ImageSize - instance_actions = nova.api.openstack.compute.plugins.v3.instance_actions:InstanceActions - instance_usage_audit_log = nova.api.openstack.compute.plugins.v3.instance_usage_audit_log:InstanceUsageAuditLog - ips = nova.api.openstack.compute.plugins.v3.ips:IPs - keypairs = nova.api.openstack.compute.plugins.v3.keypairs:Keypairs - limits = nova.api.openstack.compute.plugins.v3.limits:Limits - lock_server = nova.api.openstack.compute.plugins.v3.lock_server:LockServer - migrate_server = nova.api.openstack.compute.plugins.v3.migrate_server:MigrateServer - migrations = nova.api.openstack.compute.plugins.v3.migrations:Migrations - multinic = nova.api.openstack.compute.plugins.v3.multinic:Multinic - multiple_create = nova.api.openstack.compute.plugins.v3.multiple_create:MultipleCreate - networks = nova.api.openstack.compute.plugins.v3.networks:Networks - networks_associate = nova.api.openstack.compute.plugins.v3.networks_associate:NetworksAssociate - pause_server = nova.api.openstack.compute.plugins.v3.pause_server:PauseServer + access_ips = nova.api.openstack.compute.access_ips:AccessIPs + admin_actions = nova.api.openstack.compute.admin_actions:AdminActions + admin_password = nova.api.openstack.compute.admin_password:AdminPassword + agents = nova.api.openstack.compute.agents:Agents + aggregates = nova.api.openstack.compute.aggregates:Aggregates + assisted_volume_snapshots = nova.api.openstack.compute.assisted_volume_snapshots:AssistedVolumeSnapshots + attach_interfaces = nova.api.openstack.compute.attach_interfaces:AttachInterfaces + availability_zone = nova.api.openstack.compute.availability_zone:AvailabilityZone + baremetal_nodes = nova.api.openstack.compute.baremetal_nodes:BareMetalNodes + block_device_mapping = nova.api.openstack.compute.block_device_mapping:BlockDeviceMapping + cells = nova.api.openstack.compute.cells:Cells + certificates = nova.api.openstack.compute.certificates:Certificates + cloudpipe = nova.api.openstack.compute.cloudpipe:Cloudpipe + config_drive = nova.api.openstack.compute.config_drive:ConfigDrive + console_auth_tokens = nova.api.openstack.compute.console_auth_tokens:ConsoleAuthTokens + console_output = nova.api.openstack.compute.console_output:ConsoleOutput + consoles = nova.api.openstack.compute.consoles:Consoles + create_backup = nova.api.openstack.compute.create_backup:CreateBackup + deferred_delete = nova.api.openstack.compute.deferred_delete:DeferredDelete + disk_config = nova.api.openstack.compute.disk_config:DiskConfig + evacuate = nova.api.openstack.compute.evacuate:Evacuate + extended_availability_zone = nova.api.openstack.compute.extended_availability_zone:ExtendedAvailabilityZone + extended_server_attributes = nova.api.openstack.compute.extended_server_attributes:ExtendedServerAttributes + extended_status = nova.api.openstack.compute.extended_status:ExtendedStatus + extended_volumes = nova.api.openstack.compute.extended_volumes:ExtendedVolumes + extension_info = nova.api.openstack.compute.extension_info:ExtensionInfo + fixed_ips = nova.api.openstack.compute.fixed_ips:FixedIps + flavors = nova.api.openstack.compute.flavors:Flavors + flavors_extraspecs = nova.api.openstack.compute.flavors_extraspecs:FlavorsExtraSpecs + flavor_access = nova.api.openstack.compute.flavor_access:FlavorAccess + flavor_rxtx = nova.api.openstack.compute.flavor_rxtx:FlavorRxtx + flavor_manage = nova.api.openstack.compute.flavor_manage:FlavorManage + floating_ip_dns = nova.api.openstack.compute.floating_ip_dns:FloatingIpDns + floating_ip_pools = nova.api.openstack.compute.floating_ip_pools:FloatingIpPools + floating_ips = nova.api.openstack.compute.floating_ips:FloatingIps + floating_ips_bulk = nova.api.openstack.compute.floating_ips_bulk:FloatingIpsBulk + fping = nova.api.openstack.compute.fping:Fping + hide_server_addresses = nova.api.openstack.compute.hide_server_addresses:HideServerAddresses + hosts = nova.api.openstack.compute.hosts:Hosts + hypervisors = nova.api.openstack.compute.hypervisors:Hypervisors + images = nova.api.openstack.compute.images:Images + image_metadata = nova.api.openstack.compute.image_metadata:ImageMetadata + image_size = nova.api.openstack.compute.image_size:ImageSize + instance_actions = nova.api.openstack.compute.instance_actions:InstanceActions + instance_usage_audit_log = nova.api.openstack.compute.instance_usage_audit_log:InstanceUsageAuditLog + ips = nova.api.openstack.compute.ips:IPs + keypairs = nova.api.openstack.compute.keypairs:Keypairs + limits = nova.api.openstack.compute.limits:Limits + lock_server = nova.api.openstack.compute.lock_server:LockServer + migrate_server = nova.api.openstack.compute.migrate_server:MigrateServer + migrations = nova.api.openstack.compute.migrations:Migrations + multinic = nova.api.openstack.compute.multinic:Multinic + multiple_create = nova.api.openstack.compute.multiple_create:MultipleCreate + networks = nova.api.openstack.compute.networks:Networks + networks_associate = nova.api.openstack.compute.networks_associate:NetworksAssociate + pause_server = nova.api.openstack.compute.pause_server:PauseServer # NOTE(cyeoh): this is intentionally disabled until microversions is active. # See https://bugs.launchpad.net/nova/+bug/1426241 -# pci = nova.api.openstack.compute.plugins.v3.pci:Pci - personality = nova.api.openstack.compute.plugins.v3.personality:Personality - preserve_ephemeral_rebuild = nova.api.openstack.compute.plugins.v3.preserve_ephemeral_rebuild:PreserveEphemeralRebuild - quota_classes = nova.api.openstack.compute.plugins.v3.quota_classes:QuotaClasses - quota_sets = nova.api.openstack.compute.plugins.v3.quota_sets:QuotaSets - remote_consoles = nova.api.openstack.compute.plugins.v3.remote_consoles:RemoteConsoles - rescue = nova.api.openstack.compute.plugins.v3.rescue:Rescue - scheduler_hints = nova.api.openstack.compute.plugins.v3.scheduler_hints:SchedulerHints - security_group_default_rules = nova.api.openstack.compute.plugins.v3.security_group_default_rules:SecurityGroupDefaultRules - security_groups = nova.api.openstack.compute.plugins.v3.security_groups:SecurityGroups - server_diagnostics = nova.api.openstack.compute.plugins.v3.server_diagnostics:ServerDiagnostics - server_external_events = nova.api.openstack.compute.plugins.v3.server_external_events:ServerExternalEvents - server_metadata = nova.api.openstack.compute.plugins.v3.server_metadata:ServerMetadata - server_password = nova.api.openstack.compute.plugins.v3.server_password:ServerPassword - server_usage = nova.api.openstack.compute.plugins.v3.server_usage:ServerUsage - server_groups = nova.api.openstack.compute.plugins.v3.server_groups:ServerGroups - servers = nova.api.openstack.compute.plugins.v3.servers:Servers - services = nova.api.openstack.compute.plugins.v3.services:Services - shelve = nova.api.openstack.compute.plugins.v3.shelve:Shelve - simple_tenant_usage = nova.api.openstack.compute.plugins.v3.simple_tenant_usage:SimpleTenantUsage - suspend_server = nova.api.openstack.compute.plugins.v3.suspend_server:SuspendServer - tenant_networks = nova.api.openstack.compute.plugins.v3.tenant_networks:TenantNetworks - used_limits = nova.api.openstack.compute.plugins.v3.used_limits:UsedLimits - user_data = nova.api.openstack.compute.plugins.v3.user_data:UserData - versions = nova.api.openstack.compute.plugins.v3.versions:Versions - virtual_interfaces = nova.api.openstack.compute.plugins.v3.virtual_interfaces:VirtualInterfaces - volumes = nova.api.openstack.compute.plugins.v3.volumes:Volumes +# pci = nova.api.openstack.compute.pci:Pci + personality = nova.api.openstack.compute.personality:Personality + preserve_ephemeral_rebuild = nova.api.openstack.compute.preserve_ephemeral_rebuild:PreserveEphemeralRebuild + quota_classes = nova.api.openstack.compute.quota_classes:QuotaClasses + quota_sets = nova.api.openstack.compute.quota_sets:QuotaSets + remote_consoles = nova.api.openstack.compute.remote_consoles:RemoteConsoles + rescue = nova.api.openstack.compute.rescue:Rescue + scheduler_hints = nova.api.openstack.compute.scheduler_hints:SchedulerHints + security_group_default_rules = nova.api.openstack.compute.security_group_default_rules:SecurityGroupDefaultRules + security_groups = nova.api.openstack.compute.security_groups:SecurityGroups + server_diagnostics = nova.api.openstack.compute.server_diagnostics:ServerDiagnostics + server_external_events = nova.api.openstack.compute.server_external_events:ServerExternalEvents + server_metadata = nova.api.openstack.compute.server_metadata:ServerMetadata + server_password = nova.api.openstack.compute.server_password:ServerPassword + server_usage = nova.api.openstack.compute.server_usage:ServerUsage + server_groups = nova.api.openstack.compute.server_groups:ServerGroups + servers = nova.api.openstack.compute.servers:Servers + services = nova.api.openstack.compute.services:Services + shelve = nova.api.openstack.compute.shelve:Shelve + simple_tenant_usage = nova.api.openstack.compute.simple_tenant_usage:SimpleTenantUsage + suspend_server = nova.api.openstack.compute.suspend_server:SuspendServer + tenant_networks = nova.api.openstack.compute.tenant_networks:TenantNetworks + used_limits = nova.api.openstack.compute.used_limits:UsedLimits + user_data = nova.api.openstack.compute.user_data:UserData + versions = nova.api.openstack.compute.versionsV21:Versions + virtual_interfaces = nova.api.openstack.compute.virtual_interfaces:VirtualInterfaces + volumes = nova.api.openstack.compute.volumes:Volumes nova.api.v3.extensions.server.create = - access_ips = nova.api.openstack.compute.plugins.v3.access_ips:AccessIPs - availability_zone = nova.api.openstack.compute.plugins.v3.availability_zone:AvailabilityZone - block_device_mapping = nova.api.openstack.compute.plugins.v3.block_device_mapping:BlockDeviceMapping - block_device_mapping_v1 = nova.api.openstack.compute.plugins.v3.block_device_mapping_v1:BlockDeviceMappingV1 - config_drive = nova.api.openstack.compute.plugins.v3.config_drive:ConfigDrive - disk_config = nova.api.openstack.compute.plugins.v3.disk_config:DiskConfig - keypairs_create = nova.api.openstack.compute.plugins.v3.keypairs:Keypairs - multiple_create = nova.api.openstack.compute.plugins.v3.multiple_create:MultipleCreate - personality = nova.api.openstack.compute.plugins.v3.personality:Personality - scheduler_hints = nova.api.openstack.compute.plugins.v3.scheduler_hints:SchedulerHints - security_groups = nova.api.openstack.compute.plugins.v3.security_groups:SecurityGroups - user_data = nova.api.openstack.compute.plugins.v3.user_data:UserData + access_ips = nova.api.openstack.compute.access_ips:AccessIPs + availability_zone = nova.api.openstack.compute.availability_zone:AvailabilityZone + block_device_mapping = nova.api.openstack.compute.block_device_mapping:BlockDeviceMapping + block_device_mapping_v1 = nova.api.openstack.compute.block_device_mapping_v1:BlockDeviceMappingV1 + config_drive = nova.api.openstack.compute.config_drive:ConfigDrive + disk_config = nova.api.openstack.compute.disk_config:DiskConfig + keypairs_create = nova.api.openstack.compute.keypairs:Keypairs + multiple_create = nova.api.openstack.compute.multiple_create:MultipleCreate + personality = nova.api.openstack.compute.personality:Personality + scheduler_hints = nova.api.openstack.compute.scheduler_hints:SchedulerHints + security_groups = nova.api.openstack.compute.security_groups:SecurityGroups + user_data = nova.api.openstack.compute.user_data:UserData nova.api.v3.extensions.server.rebuild = - access_ips = nova.api.openstack.compute.plugins.v3.access_ips:AccessIPs - disk_config = nova.api.openstack.compute.plugins.v3.disk_config:DiskConfig - personality = nova.api.openstack.compute.plugins.v3.personality:Personality - preserve_ephemeral_rebuild = nova.api.openstack.compute.plugins.v3.preserve_ephemeral_rebuild:PreserveEphemeralRebuild + access_ips = nova.api.openstack.compute.access_ips:AccessIPs + disk_config = nova.api.openstack.compute.disk_config:DiskConfig + personality = nova.api.openstack.compute.personality:Personality + preserve_ephemeral_rebuild = nova.api.openstack.compute.preserve_ephemeral_rebuild:PreserveEphemeralRebuild nova.api.v3.extensions.server.update = - access_ips = nova.api.openstack.compute.plugins.v3.access_ips:AccessIPs - disk_config = nova.api.openstack.compute.plugins.v3.disk_config:DiskConfig + access_ips = nova.api.openstack.compute.access_ips:AccessIPs + disk_config = nova.api.openstack.compute.disk_config:DiskConfig nova.api.v3.extensions.server.resize = - disk_config = nova.api.openstack.compute.plugins.v3.disk_config:DiskConfig + disk_config = nova.api.openstack.compute.disk_config:DiskConfig nova.api.v3.test_extensions = basic = nova.tests.unit.api.openstack.compute.test_plugins.basic:Basic