b088d21b91
Nova never sets the Route.interface value to anything but None which fails with an error: "ValueError: Fieldinterface' cannot be None" This looks like a carry-over from the nova.network.model.Route class which has an interface field which is set to None by default but that field is never set to anything else in Nova, neither for nova-network or Neutron. Furthermore, it looks like 'interface' is not something that's in the Route data model in Neutron either. We don't hit this in the gate because the subnets we're testing with don't have host_routes set. The ValueError was fixed in Nova by not setting the attribute: 1d57c1fd53e930b02c3ce0e9914f95ef68dd1f87 This change adds a TODO to remove it in version 2.0 of the Route object. Change-Id: Ib25a79514fe4335f4df222c02fefc9da62fe04ce Closes-Bug: #1612812
42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
# 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_versionedobjects import base
|
|
from oslo_versionedobjects import fields
|
|
|
|
from os_vif.objects import base as osv_base
|
|
|
|
|
|
@base.VersionedObjectRegistry.register
|
|
class Route(osv_base.VersionedObject):
|
|
"""Represents a route."""
|
|
# Version 1.0: Initial version
|
|
VERSION = '1.0'
|
|
|
|
fields = {
|
|
'cidr': fields.IPNetworkField(),
|
|
'gateway': fields.IPAddressField(),
|
|
# TODO(mriedem): This field is never set by Nova, remove it in v2.0
|
|
# of this object.
|
|
'interface': fields.StringField(),
|
|
}
|
|
|
|
|
|
@base.VersionedObjectRegistry.register
|
|
class RouteList(osv_base.VersionedObject, base.ObjectListBase):
|
|
# Version 1.0: Initial version
|
|
VERSION = '1.0'
|
|
|
|
fields = {
|
|
'objects': fields.ListOfObjectsField('Route'),
|
|
}
|