]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
cisco/nexus plugin doesn't create port for router interface
authorDane LeBlanc <leblancd@cisco.com>
Fri, 11 Oct 2013 21:07:00 +0000 (17:07 -0400)
committerDane LeBlanc <leblancd@cisco.com>
Sat, 12 Oct 2013 00:23:55 +0000 (20:23 -0400)
commita178053854a57170084492f8378675ccf46200df
treee02e79fca3cb8a8946eb0be30127e08b2860fd9a
parentd5c455c663174414c14ed61871208f0eda66aea5
cisco/nexus plugin doesn't create port for router interface

Fixes bug 1234826

This fix adds a "nexus_l3_enable" configuration boolean for the
Cisco Nexus plugin. When this config boolean is set to False (default),
then the Nexus switches are only used for L2 switching/segmentation, and
layer 3 functionality is deferred to the OVS subplugin / network
control node. If this config boolean is set to True, layer 3
functionality, e.g. switch virtual interfaces, are supported on
the Nexus switches. (Note that layer 3 functionality is not supported
on all versions/models Nexus switches.)

Some other things addressed with this fix:
- The l3_port_check keyword argument which is optionally passed to the
  Cisco plugin's delete_port method was not being forwarded on to the
  OVS (sub) plugin. This keyword argument needs to be forwarded to OVS
  e.g. when the delete_port is being done in the context of a
  router interface delete (whereby l3_port_check==False).
- UT test cases are added for new "nexus_l3_enable" config, which
  exercise router interface add/delete.
- The Cisco test_network_plugin.py module is refactored/reorganized
  in order to cleanly add a new router interface test class.
- The test_model_update_port_rollback test case was yielding a false
  positive result (device_owner was not being passed to self.port).

Change-Id: I994b2b82769ea5e10e50dbe3a223d1518e99f714
etc/neutron/plugins/cisco/cisco_plugins.ini
neutron/plugins/cisco/common/config.py
neutron/plugins/cisco/models/virt_phy_sw_v2.py
neutron/tests/unit/cisco/test_network_plugin.py