]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Hide ipv6 subnet API attributes
authorSalvatore Orlando <salv.orlando@gmail.com>
Mon, 7 Apr 2014 23:29:54 +0000 (16:29 -0700)
committerMark McClain <mmcclain@yahoo-inc.com>
Tue, 8 Apr 2014 23:36:00 +0000 (19:36 -0400)
The attributes for ra mode and address mode should be hidden
until the IPv6 feature is fully implemented.

The changes in this patch will be reverted by another patch
which closes this bug.

Change-Id: I69a1a571b5beb566641200e60b84f0716c1ec138
Related-Bug: 1304093
(cherry picked from commit d739486a3f70cb83f8730cf7201a8b8ccf4b4c70)

neutron/api/v2/attributes.py
neutron/db/db_base_plugin_v2.py
neutron/tests/unit/test_db_plugin.py

index 852263ce0889de01f5c9074bd00580a25b7edb23..04875890b224cbd750c7672b6e023cb3b6591416 100644 (file)
@@ -727,15 +727,17 @@ RESOURCE_ATTRIBUTE_MAP = {
                         'default': True,
                         'convert_to': convert_to_boolean,
                         'is_visible': True},
-        'ipv6_ra_mode': {'allow_post': True, 'allow_put': True,
+        # NOTE: The following two attributes will be made visible once IPv6
+        # will be fully supported
+        'ipv6_ra_mode': {'allow_post': False, 'allow_put': False,
                          'default': ATTR_NOT_SPECIFIED,
                          'validate': {'type:values': constants.IPV6_MODES},
-                         'is_visible': True},
-        'ipv6_address_mode': {'allow_post': True, 'allow_put': True,
+                         'is_visible': False},
+        'ipv6_address_mode': {'allow_post': False, 'allow_put': False,
                               'default': ATTR_NOT_SPECIFIED,
                               'validate': {'type:values':
                                            constants.IPV6_MODES},
-                              'is_visible': True},
+                              'is_visible': False},
         SHARED: {'allow_post': False,
                  'allow_put': False,
                  'default': False,
index 0701ff8cc5eb798380b0eff84de77ddbded83e85..1673340e6dfdb4dce4ea1e7d4e57ab8a06a996c3 100644 (file)
@@ -1160,9 +1160,9 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2,
                     'gateway_ip': s['gateway_ip'],
                     'shared': network.shared}
             if s['ip_version'] == 6 and s['enable_dhcp']:
-                if attributes.is_attr_set(s['ipv6_ra_mode']):
+                if attributes.is_attr_set(s.get('ipv6_ra_mode')):
                     args['ipv6_ra_mode'] = s['ipv6_ra_mode']
-                if attributes.is_attr_set(s['ipv6_address_mode']):
+                if attributes.is_attr_set(s.get('ipv6_address_mode')):
                     args['ipv6_address_mode'] = s['ipv6_address_mode']
             subnet = models_v2.Subnet(**args)
 
index 4369280200716b63148fd15f0090da52f16ae705..18d6026861caa91cfaada7c234eb9fd8127ee904 100644 (file)
@@ -22,6 +22,7 @@ import os
 import mock
 from oslo.config import cfg
 from testtools import matchers
+from testtools import testcase
 import webob.exc
 
 import neutron
@@ -2998,6 +2999,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
             res = subnet_req.get_response(self.api)
             self.assertEqual(res.status_int, webob.exc.HTTPClientError.code)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_create_subnet_ipv6_attributes(self):
         gateway_ip = 'fe80::1'
         cidr = 'fe80::/80'
@@ -3008,6 +3010,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
                                      ipv6_ra_mode=mode,
                                      ipv6_address_mode=mode)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_create_subnet_ipv6_attributes_no_dhcp_enabled(self):
         gateway_ip = 'fe80::1'
         cidr = 'fe80::/80'
@@ -3058,6 +3061,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
         self.assertEqual(ctx_manager.exception.code,
                          webob.exc.HTTPClientError.code)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_create_subnet_ipv6_single_attribute_set(self):
         gateway_ip = 'fe80::1'
         cidr = 'fe80::/80'
@@ -3232,6 +3236,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
                 self.assertEqual(res.status_int,
                                  webob.exc.HTTPConflict.code)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_update_subnet_ipv6_attributes(self):
         with self.subnet(ip_version=6, cidr='fe80::/80',
                          ipv6_ra_mode=constants.IPV6_SLAAC,
@@ -3246,6 +3251,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
             self.assertEqual(res['subnet']['ipv6_address_mode'],
                              data['subnet']['ipv6_address_mode'])
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_update_subnet_ipv6_inconsistent_ra_attribute(self):
         with self.subnet(ip_version=6, cidr='fe80::/80',
                          ipv6_ra_mode=constants.IPV6_SLAAC,
@@ -3257,6 +3263,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
             self.assertEqual(res.status_int,
                              webob.exc.HTTPClientError.code)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_update_subnet_ipv6_inconsistent_address_attribute(self):
         with self.subnet(ip_version=6, cidr='fe80::/80',
                          ipv6_ra_mode=constants.IPV6_SLAAC,
@@ -3268,6 +3275,7 @@ class TestSubnetsV2(NeutronDbPluginV2TestCase):
             self.assertEqual(res.status_int,
                              webob.exc.HTTPClientError.code)
 
+    @testcase.skip("Skipped until bug 1304093 is fixed")
     def test_update_subnet_ipv6_inconsistent_enable_dhcp(self):
         with self.subnet(ip_version=6, cidr='fe80::/80',
                          ipv6_ra_mode=constants.IPV6_SLAAC,