From a53b90dea86859bf1a1b838c01aaaf21b57b2df1 Mon Sep 17 00:00:00 2001 From: Tamer Ahmed Date: Mon, 8 Jun 2020 14:04:27 -0700 Subject: [PATCH 1/3] [advanced-reboot] Change VM Network Change in PR:1653 changed prefix len and did not change the network which would result in high chance of collision with DUT vlan IP. This PR will change the network where VMs' IPs are generated. signed-off-by: Tamer Ahmed --- tests/common/fixtures/advanced_reboot.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tests/common/fixtures/advanced_reboot.py b/tests/common/fixtures/advanced_reboot.py index 97f2fc7913e..f0a169ed0ff 100644 --- a/tests/common/fixtures/advanced_reboot.py +++ b/tests/common/fixtures/advanced_reboot.py @@ -127,10 +127,9 @@ def __buildTestbedData(self): self.rebootData['dut_username'] = secrets[invetory]['sonicadmin_user'] self.rebootData['dut_password'] = secrets[invetory]['sonicadmin_password'] - self.rebootData['default_ip_range'] = str( - ipaddress.ip_interface(self.mgFacts['minigraph_vlan_interfaces'][0]['addr'] + '/18').network - ) - + prefixLen = 18 + testNetwork = ipaddress.ip_address(self.mgFacts['minigraph_vlan_interfaces'][0]['addr']) + (1 << (32 - prefixLen)) + self.rebootData['default_ip_range'] = str(testNetwork) + '/{0}'.format(prefixLen) for intf in self.mgFacts['minigraph_lo_interfaces']: if ipaddress.ip_interface(intf['addr']).ip.version == 6: self.rebootData['lo_v6_prefix'] = str(ipaddress.ip_interface(intf['addr'] + '/64').network) From ee72899d48a10d5aba4de7df1baf44418557ddef Mon Sep 17 00:00:00 2001 From: Tamer Ahmed Date: Mon, 8 Jun 2020 16:01:48 -0700 Subject: [PATCH 2/3] review comment --- tests/common/fixtures/advanced_reboot.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/common/fixtures/advanced_reboot.py b/tests/common/fixtures/advanced_reboot.py index f0a169ed0ff..ce78c3dd63a 100644 --- a/tests/common/fixtures/advanced_reboot.py +++ b/tests/common/fixtures/advanced_reboot.py @@ -129,7 +129,9 @@ def __buildTestbedData(self): prefixLen = 18 testNetwork = ipaddress.ip_address(self.mgFacts['minigraph_vlan_interfaces'][0]['addr']) + (1 << (32 - prefixLen)) - self.rebootData['default_ip_range'] = str(testNetwork) + '/{0}'.format(prefixLen) + self.rebootData['default_ip_range'] = str( + ipaddress.ip_interface(unicode(str(testNetwork) + '/{0}'.format(prefixLen))).network + ) for intf in self.mgFacts['minigraph_lo_interfaces']: if ipaddress.ip_interface(intf['addr']).ip.version == 6: self.rebootData['lo_v6_prefix'] = str(ipaddress.ip_interface(intf['addr'] + '/64').network) From 2f9c6529164eb8c69915379028761e5f3f1d6217 Mon Sep 17 00:00:00 2001 From: Tamer Ahmed Date: Tue, 9 Jun 2020 14:24:31 -0700 Subject: [PATCH 3/3] offline comment --- tests/common/fixtures/advanced_reboot.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/common/fixtures/advanced_reboot.py b/tests/common/fixtures/advanced_reboot.py index ce78c3dd63a..611b1db73eb 100644 --- a/tests/common/fixtures/advanced_reboot.py +++ b/tests/common/fixtures/advanced_reboot.py @@ -127,7 +127,8 @@ def __buildTestbedData(self): self.rebootData['dut_username'] = secrets[invetory]['sonicadmin_user'] self.rebootData['dut_password'] = secrets[invetory]['sonicadmin_password'] - prefixLen = 18 + # Change network of the dest IP addresses (used by VM servers) to be different from Vlan network + prefixLen = self.mgFacts['minigraph_vlan_interfaces'][0]['prefixlen'] - 3 testNetwork = ipaddress.ip_address(self.mgFacts['minigraph_vlan_interfaces'][0]['addr']) + (1 << (32 - prefixLen)) self.rebootData['default_ip_range'] = str( ipaddress.ip_interface(unicode(str(testNetwork) + '/{0}'.format(prefixLen))).network