Small modification before merge
diff --git a/TestON/drivers/common/cli/onosdriver.py b/TestON/drivers/common/cli/onosdriver.py
index 17579e5..8489c98 100644
--- a/TestON/drivers/common/cli/onosdriver.py
+++ b/TestON/drivers/common/cli/onosdriver.py
@@ -103,7 +103,7 @@
try:
self.handle.sendline("onos-package")
self.handle.expect("onos-package")
- self.handle.expect("tar.gz",timeout=10)
+ self.handle.expect("tar.gz",timeout=30)
handle = str(self.handle.before)
main.log.info("onos-package command returned: "+
handle)
@@ -395,7 +395,8 @@
self.handle.sendline("\n")
self.handle.expect("\$")
self.handle.sendline("cd " + self.home + "; git log -1 --pretty=fuller --decorate=short | grep -A 6 \"commit\" --color=never")
- self.handle.expect("--color=never")
+ #self.handle.expect("--color=never")
+ #self.handle.sendline("")
self.handle.expect("\$")
response=(self.name +": \n"+ str(self.handle.before + self.handle.after))
self.handle.sendline("cd " + self.home)
@@ -860,9 +861,11 @@
self.handle.expect("\$")
self.handle.sendline("onos-remove-raft-logs")
#Sometimes this command hangs
- i = self.handle.expect(["\$", pexpect.TIMEOUT], timeout=120)
+ i = self.handle.expect(["\$", pexpect.TIMEOUT],
+ timeout=120)
if i == 1:
- i = self.handle.expect(["\$", pexpect.TIMEOUT], timeout=120)
+ i = self.handle.expect(["\$", pexpect.TIMEOUT],
+ timeout=120)
if i == 1:
return main.FALSE
return main.TRUE
diff --git a/TestON/tests/TopoConvNext/TopoConvNext.py b/TestON/tests/TopoConvNext/TopoConvNext.py
index 6abf0aa..52a951c 100644
--- a/TestON/tests/TopoConvNext/TopoConvNext.py
+++ b/TestON/tests/TopoConvNext/TopoConvNext.py
@@ -29,7 +29,7 @@
global cluster_count
global topo_iteration
topo_iteration = 1
- cluster_count = 3
+ cluster_count = 1
#******
cell_name = main.params['ENV']['cellName']
@@ -59,8 +59,8 @@
main.log.info("Uninstalling previous instances")
#main.ONOSbench.onos_uninstall(node_ip = ONOS1_ip)
- #main.ONOSbench.onos_uninstall(node_ip = ONOS2_ip)
- #main.ONOSbench.onos_uninstall(node_ip = ONOS3_ip)
+ main.ONOSbench.onos_uninstall(node_ip = ONOS2_ip)
+ main.ONOSbench.onos_uninstall(node_ip = ONOS3_ip)
main.ONOSbench.onos_uninstall(node_ip = ONOS4_ip)
main.ONOSbench.onos_uninstall(node_ip = ONOS5_ip)
main.ONOSbench.onos_uninstall(node_ip = ONOS6_ip)
@@ -72,8 +72,8 @@
cell_file_result = main.ONOSbench.create_cell_file(
BENCH_ip, cell_name, MN1_ip,
"onos-core,onos-app-metrics",
- ONOS1_ip, ONOS2_ip, ONOS3_ip)
- #ONOS1_ip)
+ #ONOS1_ip, ONOS2_ip, ONOS3_ip)
+ ONOS1_ip)
main.step("Applying cell file to environment")
cell_apply_result = main.ONOSbench.set_cell(cell_name)
@@ -102,8 +102,8 @@
main.step("Set cell for ONOS cli env")
main.ONOS1cli.set_cell(cell_name)
- main.ONOS2cli.set_cell(cell_name)
- main.ONOS3cli.set_cell(cell_name)
+ #main.ONOS2cli.set_cell(cell_name)
+ #main.ONOS3cli.set_cell(cell_name)
main.step("Creating ONOS package")
package_result = main.ONOSbench.onos_package()
@@ -111,15 +111,15 @@
#Start test with single node only
main.step("Installing ONOS package")
install1_result = main.ONOSbench.onos_install(node=ONOS1_ip)
- install2_result = main.ONOSbench.onos_install(node=ONOS2_ip)
- install3_result = main.ONOSbench.onos_install(node=ONOS3_ip)
+ #install2_result = main.ONOSbench.onos_install(node=ONOS2_ip)
+ #install3_result = main.ONOSbench.onos_install(node=ONOS3_ip)
time.sleep(10)
main.step("Start onos cli")
cli1 = main.ONOS1cli.start_onos_cli(ONOS1_ip)
- cli2 = main.ONOS2cli.start_onos_cli(ONOS2_ip)
- cli3 = main.ONOS3cli.start_onos_cli(ONOS3_ip)
+ #cli2 = main.ONOS2cli.start_onos_cli(ONOS2_ip)
+ #cli3 = main.ONOS3cli.start_onos_cli(ONOS3_ip)
main.step("Enable metrics feature")
#main.ONOS1cli.feature_install("onos-app-metrics")
@@ -319,21 +319,49 @@
main.ONOS7.handle.sendline("tshark -i eth0 -t e | "+
"grep 'SYN, ACK' | grep '6633' >"+
"/tmp/syn_ack_onos6_iter"+str(i)+".txt &")
-
+
+ #NOTE:
+ # Delay before checking devices to
+ # help prevent timing out from CLI
+ # due to multiple command drop
+ time.sleep(20)
+
+ loop = True
loop_count = 0
device_count = 0
- while loop_count < 60:
+ while loop_count < 60 and loop:
main.log.info("Checking devices for device down")
+ temp_len = 0
device_str1 = main.ONOS1cli.devices(
node_ip=ONOS_ip_list[1])
device_json1 = json.loads(device_str1)
- for device1 in device_json1:
- if device1['available'] == False:
- device_count += 1
- else:
- device_count = 0
+ json_len = len(device_json1)
+ for device1 in device_json1:
+ temp_len = temp_len + 1
+ if device1['available'] == True:
+ loop = True
+ break
+ #if I'm on the last json object and I still haven't
+ #broken out of the loop, it means there were
+ #no available devices
+ elif temp_len == json_len-1:
+ main.log.info("Temp length: "+str(temp_len))
+ main.step("Flushing iptables and obtaining t0")
+ t0_system = time.time()*1000
+
+ main.ONOS1.handle.sendline("sudo iptables -F")
+ main.ONOS2.handle.sendline("sudo iptables -F")
+ main.ONOS3.handle.sendline("sudo iptables -F")
+ main.ONOS4.handle.sendline("sudo iptables -F")
+ main.ONOS5.handle.sendline("sudo iptables -F")
+ main.ONOS6.handle.sendline("sudo iptables -F")
+ main.ONOS7.handle.sendline("sudo iptables -F")
+
+ loop = False
+ break
+
#if cluster_count == 1:
# device_str1 = main.ONOS1cli.devices(
# node_ip=ONOS_ip_list[1])
@@ -392,22 +420,14 @@
#If device count is greater than the
#number of switches discovered by all nodes
#then remove iptables and measure t0 system time
- if device_count\
- >= int(num_sw):
- main.step("Flushing iptables and obtaining t0")
- t0_system = time.time()*1000
- main.ONOS1.handle.sendline("sudo iptables -F")
- main.ONOS2.handle.sendline("sudo iptables -F")
- main.ONOS3.handle.sendline("sudo iptables -F")
- main.ONOS4.handle.sendline("sudo iptables -F")
- main.ONOS5.handle.sendline("sudo iptables -F")
- main.ONOS6.handle.sendline("sudo iptables -F")
- main.ONOS7.handle.sendline("sudo iptables -F")
- break
+ loop_count += 1
time.sleep(1)
+ if device_count < int(num_sw):
+ main.log.info("Devices down did not ")
+
main.log.info("System time t0: "+str(t0_system))
counter_loop = 0
@@ -1005,7 +1025,9 @@
counter_loop += 1
time.sleep(3)
#END WHILE LOOP
-
+
+ #Below is used for reporting SYN / ACK timing
+ #of all switches
main.ONOS1.tshark_stop()
syn_ack_timestamp_list = []
if cluster_count < 3:
@@ -1029,17 +1051,29 @@
f_onos1:
for line in f_onos1:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
with open("/tmp/syn_ack_onos2_iter"+str(i)+".txt") as\
f_onos2:
for line in f_onos2:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
with open("/tmp/syn_ack_onos3_iter"+str(i)+".txt") as\
f_onos3:
for line in f_onos3:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
if cluster_count >= 4:
main.ONOS4.tshark_stop()
time.sleep(5)
@@ -1050,7 +1084,11 @@
f_onos4:
for line in f_onos4:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
if cluster_count >= 5:
main.ONOS5.tshark_stop()
time.sleep(5)
@@ -1061,7 +1099,11 @@
f_onos5:
for line in f_onos5:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
if cluster_count >= 6:
main.ONOS6.tshark_stop()
time.sleep(5)
@@ -1072,7 +1114,11 @@
f_onos6:
for line in f_onos6:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
if cluster_count == 7:
main.ONOS7.tshark_stop()
time.sleep(5)
@@ -1083,7 +1129,11 @@
f_onos7:
for line in f_onos7:
line = line.split(" ")
- syn_ack_timestamp_list.append(line[1])
+ try:
+ float(line[1])
+ syn_ack_timestamp_list.append(line[1])
+ except ValueError:
+ main.log.info("String cannot be converted")
#Sort the list by timestamp
syn_ack_timestamp_list = sorted(syn_ack_timestamp_list)
@@ -1272,8 +1322,7 @@
global topo_iteration
global cluster_count
- cluster_count = 3
- #cluster_count = 1
+ cluster_count = 1
topo_iteration += 1
main.log.report("Increasing topology size")