self._node = tg_node
if tg_node['subtype'] == NodeSubTypeTG.TREX:
- trex_path = "/opt/trex-core-2.07"
+ trex_path = "/opt/trex-core-2.09"
ssh = SSH()
ssh.connect(tg_node)
(ret, stdout, stderr) = ssh.exec_command(
- "sudo sh -c '{}/resources/tools/t-rex/"
+ "sudo -E sh -c '{}/resources/tools/t-rex/"
"t-rex-installer.sh'".format(Constants.REMOTE_FW_DIR),
timeout=1800)
if int(ret) != 0:
.format(stdout + stderr))
raise RuntimeError('trex config generation error')
- (ret, stdout, stderr) = ssh.exec_command(
- "sh -c 'cd {0}/scripts/ && sudo ./trex-cfg'".format(trex_path))
- if int(ret) != 0:
- logger.error('trex-cfg failed: {0}'.format(stdout + stderr))
- raise RuntimeError('trex-cfg failed')
-
max_startup_retries = 3
while max_startup_retries > 0:
# kill T-rex only if it is already running
(ret, _, _) = ssh.exec_command(
"sh -c 'pgrep t-rex && sudo pkill t-rex'")
+ # configure T-rex
+ (ret, stdout, stderr) = ssh.exec_command(
+ "sh -c 'cd {0}/scripts/ && sudo ./trex-cfg'"\
+ .format(trex_path))
+ if int(ret) != 0:
+ logger.error('trex-cfg failed: {0}'.format(stdout + stderr))
+ raise RuntimeError('trex-cfg failed')
+
# start T-rex
(ret, _, _) = ssh.exec_command(
"sh -c 'cd {0}/scripts/ && "
self._loss = self._result.split(', ')[3].split('=')[1]
self._latency = []
- lat_int_list = []
- #round latency numbers
- lat_str = self._result.split(', ')[4].split('=')[1]
- for lat in lat_str.split("/"):
- lat_int_list.append(int(float(lat)))
- self._latency.append("/".join(str(tmp) for tmp in lat_int_list))
- lat_int_list = []
- lat_str = self._result.split(', ')[5].split('=')[1]
- for lat in lat_str.split("/"):
- lat_int_list.append(int(float(lat)))
- self._latency.append("/".join(str(tmp) for tmp in lat_int_list))
+ self._latency.append(self._result.split(', ')[4].split('=')[1])
+ self._latency.append(self._result.split(', ')[5].split('=')[1])
def stop_traffic_on_tg(self):
"""Stop all traffic on TG