diff --git a/nova/api/openstack/compute/routes.py b/nova/api/openstack/compute/routes.py index f73a4ffde038..7e9b2f4ff115 100644 --- a/nova/api/openstack/compute/routes.py +++ b/nova/api/openstack/compute/routes.py @@ -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'] }), diff --git a/nova/api/openstack/compute/security_group_default_rules.py b/nova/api/openstack/compute/security_group_default_rules.py index 3468f7f8d041..b4b6a8bef88e 100644 --- a/nova/api/openstack/compute/security_group_default_rules.py +++ b/nova/api/openstack/compute/security_group_default_rules.py @@ -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 [] diff --git a/setup.cfg b/setup.cfg index 5370fe9e7712..caa8f8ef01bf 100644 --- a/setup.cfg +++ b/setup.cfg @@ -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