Look for ipv6 routes so ipv6-only jobs will not fail
For change 739139 [1] PS 12, the neutron-tempest-plugin-scenario-linuxbridge died in devstack with "/opt/stack/devstack/functions-common:237 Failure retrieving default route device", which comes from "/opt/stack/devstack/lib/neutron-legacy:237:die_if_not_set". Looking at the worlddump.txt for that job [2] I see that there is a default ipv6 route; the vm was not configured with ipv4 networking. ip route -------- ip -6 route ----------- ::1 dev lo proto kernel metric 256 pref medium 2607:ff68:100:54::/64 dev ens3 proto kernel metric 256 expires 86380sec pref medium fe80::/64 dev ens3 proto kernel metric 256 pref medium default via fe80::f816:3eff:fe77:b05c dev ens3 proto ra metric 1024 expires 280sec hoplimit 64 pref medium Looking at the devstack code that throws the error [3] it looks like it only looks for a default route in the output of `ip route`, which does not include ipv6 information. This change should look in both the ipv4 and ipv6 route table. A similar check in the L3 setup code is also updated. [1] https://review.opendev.org/#/c/739139/ [2] https://d4eb7e3efe98cba79a4b-f4d168cdb20f40841821e4b213645c0f.ssl.cf2.rackcdn.com/739139/12/gate/neutron-tempest-plugin-scenario-linuxbridge/9a6b4f7/controller/logs/worlddump-latest.txt [3] https://opendev.org/openstack/devstack/src/branch/master/lib/neutron-legacy#L236 Closes-Bug: #1902002 Change-Id: I839e8c222368df98fec308cf41248a9dd0a8c187
This commit is contained in:
parent
47f76acbba
commit
efc04eec00
@ -233,7 +233,7 @@ OVS_PHYSICAL_BRIDGE=${OVS_PHYSICAL_BRIDGE:-br-ex}
|
|||||||
#
|
#
|
||||||
# Example: ``LB_PHYSICAL_INTERFACE=eth1``
|
# Example: ``LB_PHYSICAL_INTERFACE=eth1``
|
||||||
if [[ $Q_AGENT == "linuxbridge" && -z ${LB_PHYSICAL_INTERFACE} ]]; then
|
if [[ $Q_AGENT == "linuxbridge" && -z ${LB_PHYSICAL_INTERFACE} ]]; then
|
||||||
default_route_dev=$(ip route | grep ^default | awk '{print $5}')
|
default_route_dev=$( (ip route; ip -6 route) | grep ^default | head -n 1 | awk '{print $5}')
|
||||||
die_if_not_set $LINENO default_route_dev "Failure retrieving default route device"
|
die_if_not_set $LINENO default_route_dev "Failure retrieving default route device"
|
||||||
LB_PHYSICAL_INTERFACE=$default_route_dev
|
LB_PHYSICAL_INTERFACE=$default_route_dev
|
||||||
fi
|
fi
|
||||||
|
@ -101,7 +101,6 @@ SUBNETPOOL_SIZE_V4=${SUBNETPOOL_SIZE_V4:-26}
|
|||||||
SUBNETPOOL_SIZE_V6=${SUBNETPOOL_SIZE_V6:-64}
|
SUBNETPOOL_SIZE_V6=${SUBNETPOOL_SIZE_V6:-64}
|
||||||
|
|
||||||
default_v4_route_devs=$(ip -4 route | grep ^default | awk '{print $5}')
|
default_v4_route_devs=$(ip -4 route | grep ^default | awk '{print $5}')
|
||||||
die_if_not_set $LINENO default_v4_route_devs "Failure retrieving default IPv4 route devices"
|
|
||||||
|
|
||||||
default_v6_route_devs=$(ip -6 route list match default table all | grep via | awk '{print $5}')
|
default_v6_route_devs=$(ip -6 route list match default table all | grep via | awk '{print $5}')
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user