-
Notifications
You must be signed in to change notification settings - Fork 906
Open
Description
Is it platform specific
generic
Importance or Severity
Critical
Description of the bug
test_add_rack not updated to IPv6 only topology
Steps to Reproduce
run tests test_add_rack on IPv6 only toppology
Actual Behavior and Expected Behavior
The test is expected to pass on IPv6 only topology
Relevant log output
@pytest.mark.disable_loganalyzer
def test_add_rack(configure_dut, tbinfo, duthosts, rand_one_dut_hostname):
global data_dir, orig_db_dir, clet_db_dir, files_dir
duthost = duthosts[rand_one_dut_hostname]
log_info("sys.version={}".format(sys.version))
> do_test_add_rack(duthost, is_storage_backend='backend' in tbinfo['topo']['name'], skip_clet_test=True)
configure_dut = None
duthost = <MultiAsicSonicHost ....>
duthosts = [<MultiAsicSonicHost ....>]
rand_one_dut_hostname = '....'
tbinfo = {'comment': 'Mellanox MTR testbed', 'conf-name': '....-t1-isolated-v6-d56u1-lag', 'duts': ['....'], 'duts_map': {'....': 0}, ...}
configlet/test_add_rack.py:70:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
configlet/util/base_test.py:268: in do_test_add_rack
chk_bgp_session(duthost, tor_data["ip"]["remote"], "pre-clet test")
duthost = <MultiAsicSonicHost ....>
hack_apply = False
is_storage_backend = False
ret = {'changed': True, 'stdout': '', 'stderr': '', 'rc': 0, 'cmd': "python3 -c 'import generic_config_updater'", 'start': '...ne, 'removes': None, 'stdin': None}}, 'stdout_lines': [], 'stderr_lines': [], '_ansible_no_log': None, 'failed': False}
skip_clet_test = True
skip_generic_add = False
skip_generic_rm = False
skip_load = False
skip_prepare = False
common/configlet/utils.py:406: in chk_bgp_session
info = duthost.get_bgp_neighbor_info(ip)
duthost = <MultiAsicSonicHost ....>
ip = ''
msg = 'pre-clet test'
common/devices/sonic.py:1396: in get_bgp_neighbor_info
nbip = ipaddress.ip_address(neighbor_ip)
asic_id = None
neighbor_ip = ''
self = <SonicHost ....>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
address = ''
def ip_address(address):
"""Take an IP string/int and return an object of the correct type.
Args:
address: A string or integer, the IP address. Either IPv4 or
IPv6 addresses may be supplied; integers less than 2**32 will
be considered to be IPv4 by default.
Returns:
An IPv4Address or IPv6Address object.
Raises:
ValueError: if the *address* passed isn't either a v4 or a v6
address
"""
try:
return IPv4Address(address)
except (AddressValueError, NetmaskValueError):
pass
try:
return IPv6Address(address)
except (AddressValueError, NetmaskValueError):
pass
> raise ValueError('%r does not appear to be an IPv4 or IPv6 address' %
address)
E ValueError: '' does not appear to be an IPv4 or IPv6 address
address = ''Output of show version
Attach files (if any)
No response