lf_check.py : added timeout on Popen

Signed-off-by: Chuck SmileyRekiere <chuck.smileyrekiere@candelatech.com>
This commit is contained in:
Chuck SmileyRekiere
2021-05-18 05:42:00 -06:00
parent 62c6b5cd5f
commit 6e332860d5

View File

@@ -276,22 +276,31 @@ class lf_check():
process = subprocess.Popen((command).split(' '), shell=False, stdout=stdout_log, stderr=stderr_log, universal_newlines=True) process = subprocess.Popen((command).split(' '), shell=False, stdout=stdout_log, stderr=stderr_log, universal_newlines=True)
try: try:
out, err = process.communicate() #out, err = process.communicate()
except: process.wait(timeout=120)
if err: except subprocess.TimeoutExpired:
self.logger.info("command Test timed out: {}".format(command)) process.terminate()
self.test_result = "TIMEOUT"
#if err:
# self.logger.info("command Test timed out: {}".format(command))
#self.logger.info(stderr_log_txt) #self.logger.info(stderr_log_txt)
stderr_log_size = os.path.getsize(stderr_log_txt) if(self.test_result != "TIMEOUT"):
if stderr_log_size > 0 : stderr_log_size = os.path.getsize(stderr_log_txt)
self.logger.info("File: {} is not empty: {}".format(stderr_log_txt,str(stderr_log_size))) if stderr_log_size > 0 :
self.logger.info("File: {} is not empty: {}".format(stderr_log_txt,str(stderr_log_size)))
self.test_result = "Failure" self.test_result = "Failure"
background = self.background_red background = self.background_red
else:
self.logger.info("File: {} is empty: {}".format(stderr_log_txt,str(stderr_log_size)))
self.test_result = "Success"
background = self.background_green
else: else:
self.logger.info("File: {} is empty: {}".format(stderr_log_txt,str(stderr_log_size))) self.logger.info("TIMEOUT FAILURE, Check LANforge Radios")
self.test_result = "Success" self.test_result = "Time Out"
background = self.background_green background = self.background_purple
self.html_results += """ self.html_results += """
<tr><td>""" + str(test) + """</td><td class='scriptdetails'>""" + str(command) + """</td> <tr><td>""" + str(test) + """</td><td class='scriptdetails'>""" + str(command) + """</td>
@@ -299,6 +308,8 @@ class lf_check():
<td><a href=""" + str(stdout_log_txt) + """ target=\"_blank\">STDOUT</a></td>""" <td><a href=""" + str(stdout_log_txt) + """ target=\"_blank\">STDOUT</a></td>"""
if self.test_result == "Failure": if self.test_result == "Failure":
self.html_results += """<td><a href=""" + str(stderr_log_txt) + """ target=\"_blank\">STDERR</a></td>""" self.html_results += """<td><a href=""" + str(stderr_log_txt) + """ target=\"_blank\">STDERR</a></td>"""
elif self.test_result == "Time Out":
self.html_results += """<td><a href=""" + str(stderr_log_txt) + """ target=\"_blank\">STDERR</a></td>"""
else: else:
self.html_results += """<td></td>""" self.html_results += """<td></td>"""
self.html_results += """</tr>""" self.html_results += """</tr>"""