Merge "use net mtu api writable def from neutron-lib"

This commit is contained in:
Zuul 2017-11-15 15:10:27 +00:00 committed by Gerrit Code Review
commit 64be202964
2 changed files with 5 additions and 43 deletions

View File

@ -10,49 +10,11 @@
# License for the specific language governing permissions and limitations
# under the License.
from neutron_lib.api import converters
from neutron_lib.api.definitions import network
from neutron_lib.api.definitions import network_mtu
from neutron_lib.api.definitions import network_mtu_writable as apidef
from neutron_lib.api import extensions
#TODO(ihrachys) migrate api definition to neutron-lib
MTU = 'mtu'
RESOURCE_ATTRIBUTE_MAP = {
network.COLLECTION_NAME: {
MTU: {'allow_post': True, 'allow_put': True, 'is_visible': True,
'validate': {'type:non_negative': None}, 'default': 0,
'convert_to': converters.convert_to_int},
},
}
class Netmtu_writable(extensions.ExtensionDescriptor):
class Netmtu_writable(extensions.APIExtensionDescriptor):
"""Extension class supporting writable network MTU."""
@classmethod
def get_name(cls):
return 'Network MTU (writable)'
@classmethod
def get_alias(cls):
return 'net-mtu-writable'
@classmethod
def get_description(cls):
return 'Provides a writable MTU attribute for a network resource.'
@classmethod
def get_updated(cls):
return '2017-07-12T00:00:00-00:00'
def get_extended_resources(self, version):
if version == "2.0":
return RESOURCE_ATTRIBUTE_MAP
else:
return {}
def get_required_extensions(self):
return [network_mtu.ALIAS]
api_definition = apidef

View File

@ -18,6 +18,7 @@ from neutron_lib.api.definitions import allowedaddresspairs as addr_apidef
from neutron_lib.api.definitions import availability_zone as az_def
from neutron_lib.api.definitions import extra_dhcp_opt as edo_ext
from neutron_lib.api.definitions import network as net_def
from neutron_lib.api.definitions import network_mtu_writable as mtuw_apidef
from neutron_lib.api.definitions import port as port_def
from neutron_lib.api.definitions import port_security as psec
from neutron_lib.api.definitions import portbindings
@ -79,7 +80,6 @@ from neutron.db import securitygroups_rpc_base as sg_db_rpc
from neutron.db import segments_db
from neutron.db import subnet_service_type_db_models as service_type_db
from neutron.db import vlantransparent_db
from neutron.extensions import netmtu_writable as mtu_ext
from neutron.extensions import providernet as provider
from neutron.extensions import vlantransparent
from neutron.plugins.common import utils as p_utils
@ -878,7 +878,7 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2,
context.session.expire(db_network)
if (
mtu_ext.MTU in net_data or
mtuw_apidef.MTU in net_data or
# NOTE(ihrachys) mtu may be null for existing networks,
# calculate and update it as needed; the conditional can be
# removed in Queens when we populate all mtu attributes and