Commit 5e16f58
Use ip command to check for ipv4/v6 addresses
For some reason the nmcli call to determine the number of ipv6
addresses on an interface is sometimes returning a blank line as
part of the output. This causes a single address to look like 2
because we're just checking the line count and makes us incorrectly
set "ipv6.may-fail no" on the interface. This causes the connection
to fail and prevents ovs-configuration from completing.
Here's some example output from an affected system:
[root@master-0-0 core]# nmcli -m multiline --get-values ip6.address conn show 84a523ff-ee8a-4a29-94ca-47590eb0cb76
IP6.ADDRESS[1]:fe80::5054:ff:fe6e:6923/64
[root@master-0-0 core]#
Additionally, we have seen another case where the link-local address
from both the baremetal and provisioning networks shows up in the
output of this command. That will also fail because we're just
looking for line count > 1.
This change modifies the check to use the ip command on the interface
directly, so we should only get the addresses on the interface itself
and we can use jq to filter out the ones we're not interested in.
Although the bug specifically related to ipv6 addresses, in theory
a similar issue could exist for ipv4 so that check is also converted.1 parent 1307ccf commit 5e16f58
1 file changed
Lines changed: 4 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
308 | 308 | | |
309 | 309 | | |
310 | 310 | | |
311 | | - | |
312 | | - | |
| 311 | + | |
| 312 | + | |
313 | 313 | | |
314 | 314 | | |
315 | 315 | | |
316 | 316 | | |
317 | 317 | | |
318 | | - | |
319 | | - | |
| 318 | + | |
| 319 | + | |
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
| |||
0 commit comments