← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1552070] [NEW] Two functional test method in TestDvrRouter don't work to dual_stack case

 

Public bug reported:

In TestDvrRouter class, two methods,
_add_fip_agent_gw_port_info_to_router and _add_snat_port_info_to_router
don't work for dual_stack case.

Method generate_dvr_router_info will try to call prepare_router_data to
get a basic router dict, and then call the two methods to process
additional data in router dict.

If we passing dual_stack=True, in the router dict, ex_gw_port  will have
two subnets and two fixed_ips [1], and two subnets and two fixed_ips for
each interface [2], one for v4 and another for v6.

But in _add_fip_agent_gw_port_info_to_router, it will only process the first fixed_ip and subnet in ex_gw_port in router dict [3],
and in _add_snat_port_info_to_router, it will only process fixed_ip and subnet for the first interface [4].
That will make dual_stack finally fail to work.

[1] https://github.com/openstack/neutron/blob/master/neutron/tests/common/l3_test_common.py#L61-L94
[2] https://github.com/openstack/neutron/blob/master/neutron/tests/common/l3_test_common.py#L140-L174
[3] https://github.com/openstack/neutron/blob/master/neutron/tests/functional/agent/l3/test_dvr_router.py#L230-L251
[4] https://github.com/openstack/neutron/blob/master/neutron/tests/functional/agent/l3/test_dvr_router.py#L258-L280

** Affects: neutron
     Importance: Undecided
     Assignee: ZongKai LI (lzklibj)
         Status: New

** Changed in: neutron
     Assignee: (unassigned) => ZongKai LI (lzklibj)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1552070

Title:
  Two functional test method in TestDvrRouter don't work to dual_stack
  case

Status in neutron:
  New

Bug description:
  In TestDvrRouter class, two methods,
  _add_fip_agent_gw_port_info_to_router and
  _add_snat_port_info_to_router don't work for dual_stack case.

  Method generate_dvr_router_info will try to call prepare_router_data
  to get a basic router dict, and then call the two methods to process
  additional data in router dict.

  If we passing dual_stack=True, in the router dict, ex_gw_port  will
  have two subnets and two fixed_ips [1], and two subnets and two
  fixed_ips for each interface [2], one for v4 and another for v6.

  But in _add_fip_agent_gw_port_info_to_router, it will only process the first fixed_ip and subnet in ex_gw_port in router dict [3],
  and in _add_snat_port_info_to_router, it will only process fixed_ip and subnet for the first interface [4].
  That will make dual_stack finally fail to work.

  [1] https://github.com/openstack/neutron/blob/master/neutron/tests/common/l3_test_common.py#L61-L94
  [2] https://github.com/openstack/neutron/blob/master/neutron/tests/common/l3_test_common.py#L140-L174
  [3] https://github.com/openstack/neutron/blob/master/neutron/tests/functional/agent/l3/test_dvr_router.py#L230-L251
  [4] https://github.com/openstack/neutron/blob/master/neutron/tests/functional/agent/l3/test_dvr_router.py#L258-L280

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1552070/+subscriptions


Follow ups