Use plain routes list for os-security-group-default-rules instead of stevedore

This patch adds os-security-group-default-rules related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike
Change-Id: Ifd7c8fc508c0afdb3ce14a4514862805a1569a8b
This commit is contained in:
He Jie Xu 2017-06-29 20:34:20 +08:00
parent c4a95099ab
commit 7f484134fb
3 changed files with 13 additions and 21 deletions

View File

@ -72,6 +72,7 @@ from nova.api.openstack.compute import quota_classes
from nova.api.openstack.compute import quota_sets
from nova.api.openstack.compute import remote_consoles
from nova.api.openstack.compute import rescue
from nova.api.openstack.compute import security_group_default_rules
from nova.api.openstack.compute import security_groups
from nova.api.openstack.compute import server_diagnostics
from nova.api.openstack.compute import server_external_events
@ -253,6 +254,10 @@ security_group_controller = functools.partial(_create_controller,
security_groups.SecurityGroupController, [], [])
security_group_default_rules_controller = functools.partial(_create_controller,
security_group_default_rules.SecurityGroupDefaultRulesController, [], [])
security_group_rules_controller = functools.partial(_create_controller,
security_groups.SecurityGroupRulesController, [], [])
@ -620,6 +625,14 @@ ROUTE_LIST = (
('/os-quota-sets/{id}/defaults', {
'GET': [quota_set_controller, 'defaults']
}),
('/os-security-group-default-rules', {
'GET': [security_group_default_rules_controller, 'index'],
'POST': [security_group_default_rules_controller, 'create']
}),
('/os-security-group-default-rules/{id}', {
'GET': [security_group_default_rules_controller, 'show'],
'DELETE': [security_group_default_rules_controller, 'delete']
}),
('/os-security-group-rules', {
'POST': [security_group_rules_controller, 'create']
}),

View File

@ -25,9 +25,6 @@ from nova.network.security_group import openstack_driver
from nova.policies import security_group_default_rules as sgdr_policies
ALIAS = "os-security-group-default-rules"
class SecurityGroupDefaultRulesController(sg.SecurityGroupControllerBase,
wsgi.Controller):
@ -135,20 +132,3 @@ class SecurityGroupDefaultRulesController(sg.SecurityGroupControllerBase,
sg_rule['ip_range'] = {}
sg_rule['ip_range'] = {'cidr': rule['cidr']}
return sg_rule
class SecurityGroupDefaultRules(extensions.V21APIExtensionBase):
"""Default rules for security group support."""
name = "SecurityGroupDefaultRules"
alias = ALIAS
version = 1
def get_resources(self):
resources = [
extensions.ResourceExtension(ALIAS,
SecurityGroupDefaultRulesController())]
return resources
def get_controller_extensions(self):
return []

View File

@ -74,7 +74,6 @@ wsgi_scripts =
nova.api.v21.extensions =
baremetal_nodes = nova.api.openstack.compute.baremetal_nodes:BareMetalNodes
extension_info = nova.api.openstack.compute.extension_info:ExtensionInfo
security_group_default_rules = nova.api.openstack.compute.security_group_default_rules:SecurityGroupDefaultRules
versions = nova.api.openstack.compute.versionsV21:Versions
volumes = nova.api.openstack.compute.volumes:Volumes