summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhebingning <[email protected]>2022-10-24 14:11:23 +0800
committerhebingning <[email protected]>2022-10-24 14:11:23 +0800
commitd5135117ee4f8f4039045e20965c8ce817887abe (patch)
tree1d9ed000cbdbe6af4c375e6475d0aa95b101f098
parentaddc186894ae2d5b7d59c6f8a2e7117440526fe5 (diff)
parent95c9ea84a73f9527fcc1fc237714f9814a7c0f37 (diff)
Merge branch 'develop' of https://git.mesalab.cn/dongxiaoyan/gap_tsg_api.git into develop
-rw-r--r--control/business.py39
-rw-r--r--control/control.py8
-rw-r--r--control/control_config.ini22
3 files changed, 50 insertions, 19 deletions
diff --git a/control/business.py b/control/business.py
index be7383d..022ed84 100644
--- a/control/business.py
+++ b/control/business.py
@@ -212,10 +212,11 @@ def clear_historical_reort(instructNo_setup_json_abs_path, tsglogger):
except Exception as e:
tsglogger.error(e)
tsglogger.error("异常:{}".format((traceback.format_exc())))
- #删除agent server上的report历史文件:
+
+ #删除agent server上的report历史文件:删除42.4文件服务器的器
agent_server_host = Linux(ip="192.168.42.4", username="root", password="Xxg-LAB<>90", tsglogger=tsglogger)
agent_server_host.connect()
- clear_cmd = 'find /root/work/oss -ctime +{} -type d -name "20*" -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
+ clear_cmd = 'find /root/work/oss -ctime +{} -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
clear_result = agent_server_host.send(clear_cmd)
clear_cmd2 = 'find /root/work -ctime +{} -type d -name "20*" -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
@@ -227,10 +228,30 @@ def clear_historical_reort(instructNo_setup_json_abs_path, tsglogger):
clear_cmd_b = 'find /root/work/b -ctime +{} -exec rm -rf {{}} \\;'.format(agent_server_layer_cache_retention_time)
clear_result_b = agent_server_host.send(clear_cmd_b)
time.sleep(0.5)
-
agent_server_host.close()
+
+
+ #删除agent server上的report历史文件:删除fusion.geedge.net文件服务器的器
+ agent_server_host_2 = Linux(ip="fusion.geedge.net", username="root", password="Fusion-2022+GDNT", tsglogger=tsglogger)
+ agent_server_host_2.connect()
+ clear_cmd = 'find /root/work/oss -ctime +{} -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
+ clear_result = agent_server_host_2.send(clear_cmd)
+
+ clear_cmd2 = 'find /root/work -ctime +{} -type d -name "20*" -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
+ clear_result2 = agent_server_host_2.send(clear_cmd2)
+
+ clear_cmd3 = 'find /root/work -ctime +{} -type d -name "dry*" -exec rm -rf {{}} \\;'.format(agent_server_layer_retention_time)
+ clear_result3 = agent_server_host_2.send(clear_cmd3)
+
+ clear_cmd_b = 'find /root/work/b -ctime +{} -exec rm -rf {{}} \\;'.format(agent_server_layer_cache_retention_time)
+ clear_result_b = agent_server_host_2.send(clear_cmd_b)
+ time.sleep(0.5)
+ agent_server_host_2.close()
+
+
tsglogger.info("结束函数:{}".format(clear_historical_reort.__name__))
+
def get_setup_abs_path(instructNo, tsglogger):
tsglogger.info("开始函数:{}".format(get_setup_abs_path.__name__))
control_config = configparser.ConfigParser()
@@ -404,7 +425,8 @@ def execute_combine_capture_packet(robot_command, tsglogger):
tsglogger.info(f"结束函数:{execute_combine_capture_packet.__name__}")
return [dpkt, [source_file_info]]
-
+exec_fail_robot_command_list = []
+exec_fail_lock = RLock()
def execute_commond_of_robot(robot_command, f_dict, tsglogger):
"""
执行robot命令行参数函数,包括dryrun命令和测试robot命令两个命令
@@ -437,6 +459,11 @@ def execute_commond_of_robot(robot_command, f_dict, tsglogger):
dryrun_command_result = re.search("-----------------------------------------------------------------.*", dryrun_command_result, flags=re.DOTALL).group(0)
if "PASS" in dryrun_command_result:
break
+ else: #没有获取到case通过的pass标志时,判断为case执行失败,将失败的robot_comand命令暂时留存起来,执行一轮后再次执行失败的用例
+ exec_fail_lock.acquire()
+ exec_fail_robot_command_list.append(robot_command)
+ exec_fail_lock.acquire()
+ tsglogger.info(f"执行失败的命令:{robot_command}")
report_path = re.search("Report:.*", dryrun_command_result).group(0)
str1 = re.search("cd\s.*?\s", robot_command).group(0).split() #重新从执行命令中拼出casename,其它的地方不好改变了
str2 = re.search("--test.*", robot_command).group(0).split()
@@ -1197,7 +1224,9 @@ def capture_packet_and_execute_robot(robot_command, client_info, f_dict, common_
if signal == 0:
#当这个手机设备没有可以执行的case时,会走到这个分支,需要处理分配case和手机设备不匹配的情况,将该用例执行下去
- tsglogger.info(client_info["incomingMobileClientInfo"]["clientModule"] + "型号手机没有可以执行的用例了")
+ tsglogger.info(client_info["incomingMobileClientInfo"]["clientModule"] + "型号手机没有可以执行的用例了--->>>"
+ + "该手机可以执行用例名称:{},当前的需要执行的用例列表内容:{}。可以执行的用例名称不在当前需要执行的用例列表中!!!".format(mobile_info_allow_case_list, mobile_case_list[case_old_id:]))
+
signal_3 = 0
robot_command = mobile_case_list[case_old_id]
mobile_case_no_used.append([robot_command, client_info["incomingMobileClientInfo"]["clientModule"], threading_name])
diff --git a/control/control.py b/control/control.py
index 1881fd8..42de938 100644
--- a/control/control.py
+++ b/control/control.py
@@ -158,12 +158,12 @@ if __name__ == "__main__":
if 1 == 1 : #当执行该条件时,会从命令行输入参数
try:
parser = argparse.ArgumentParser(description="control args")
- parser.add_argument("--instructNo", "-i", help="instructNo 唯一标识,必要参数。", required=True)
- parser.add_argument("--runMode", "-r", help="runMode 运行模式,非必要参数。runMode=fusion执行fusion模式;"
+ parser.add_argument("-i", "--instructNo", metavar="", help="instructNo 唯一标识,必要参数。", required=True)
+ parser.add_argument("-r", "--runMode", metavar="", help="runMode 运行模式,非必要参数。runMode=fusion执行fusion模式;"
"runMode=standalone执行独立模式,默认值为fusion。", default="fusion")
- parser.add_argument("--onlyDryrun", "-o", help="onlyDryrun 是否只运行dryrun,非必要参数。 当为onlyDryrun=yes时,只运行dryrun,"
+ parser.add_argument("-o", "--onlyDryrun", metavar="", help="onlyDryrun 是否只运行dryrun,非必要参数。 当为onlyDryrun=yes时,只运行dryrun,"
"onlyDryrun=no时;运行全流程,默认值为no。", default="no")
- parser.add_argument("--kill", "-k", help="kill 中断当前唯一标识下所有进程,非必要参数。当有-k时,中断进程。", nargs="?", const="1")
+ parser.add_argument("-k", "--kill", metavar="", help="kill 中断当前唯一标识下所有进程,非必要参数。当有-k时,中断进程。", nargs="?", const="1")
args = parser.parse_args()
instructNo = args.instructNo
runMode = args.runMode
diff --git a/control/control_config.ini b/control/control_config.ini
index dc19be2..d655b9c 100644
--- a/control/control_config.ini
+++ b/control/control_config.ini
@@ -33,24 +33,26 @@ mobile_info_dict1 = {
mobile_info_dict = {
"thunder": ["wechat", "facebook", "Instagram", "gmail", "twitter", "youtube", "qq", "taobao", "bilibili", "V4C", "UGVPN", "TorVPN"],
"free": ["telegram","skype", "whatsapp", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN", "Freegate", "TachyonVPN", "visitWebsite", "TorVPN"],
- "mumu": ["baidu","psiphon3"],
+ "mumu": ["baidu","psiphon3","skype","qq","facebook","Instagram"],
"honor": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "UGVPN", "anonytun_vpn", "TurboVPN_mm", "FlashVPN"],
"vivoV2031A": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "TorVPN", "TorBrowser", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN"],
"xiaomi": ["telegram", "wechat", "facebook", "gmail", "skype", "twitter", "baidu", "qq", "taobao", "bilibili", "psiphon3", "UGVPN", "anonytun_vpn", "FlashVPN", "TurboVPN_mm"],
- "yijia": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "TorVPN", "TorBrowser", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN"]
+ "yijia": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "TorVPN", "TorBrowser", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN"],
+ "iphone12": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "whatsapp", "youtube", "baidu", "qq", "taobao", "bilibili"]
}
-
mobile_info_dict2 = {
- "thunder":["wechat", "facebook", "Instagram", "gmail", "twitter", "youtube", "qq", "taobao", "bilibili", "V4C", "UGVPN", "TorVPN"],
- "free":["telegram","skype", "whatsapp", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN", "Freegate", "TachyonVPN",
- "visitWebsite", "TorVPN"],
- "mumu":["baidu","psiphon3"],
- "honor":[],
- "vivoV2031A":["telegram", "V4C"]
+ "thunder": ["wechat", "facebook", "Instagram", "gmail", "twitter", "youtube", "qq", "taobao", "bilibili", "V4C", "UGVPN", "TorVPN"],
+ "free": ["telegram","skype", "whatsapp", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN", "Freegate", "TachyonVPN", "visitWebsite", "TorVPN"],
+ "mumu": ["baidu","psiphon3","skype","qq"],
+ "honor": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "UGVPN", "anonytun_vpn", "TurboVPN_mm", "FlashVPN"],
+ "vivoV2031A": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "TorVPN", "TorBrowser", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN"],
+ "xiaomi": ["telegram", "wechat", "facebook", "gmail", "skype", "twitter", "baidu", "qq", "taobao", "bilibili", "psiphon3", "UGVPN", "anonytun_vpn", "FlashVPN", "TurboVPN_mm"],
+ "yijia": ["telegram", "wechat", "facebook", "Instagram", "gmail", "skype", "twitter", "youtube", "baidu", "qq", "taobao", "bilibili", "psiphon3", "Freegate", "TachyonVPN", "TorVPN", "TorBrowser", "V4C", "UGVPN", "VPNlat", "anonytun_vpn", "urbanVPN", "TurboVPN_mm", "FlashVPN", "ProtonVPN"]
}
+
[report_retention_time]
-control_layer_retention_time = 3
+control_layer_retention_time = 10
agent_server_layer_retention_time = 10
agent_server_layer_cache_retention_time = 2 \ No newline at end of file