import argparse
import os
import subprocess
import time
import schedule
from utils.download_sdk_and_image.download import get_the_image
def prepare_test():
arguments = parse_args()
prepared = True
if not arguments.skip_download_sdk:
sdk_prepared = get_the_image('sdk', '', None, None)
prepared = prepared and sdk_prepared
if not arguments.skip_download_dayu:
dayu_prepared = get_the_image('dayu', '', None, None)
job(['python', './utils/flash_image/burn_image.py'])
prepared = prepared and dayu_prepared
job(['python', './utils/commit_message/get_commit_message.py'])
return prepared
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument('--skipDownloadSdk', dest='skip_download_sdk', action='store_true', default=False,
help='specify whether to skip the download sdk or not')
parser.add_argument('--skipDownloadDayu', dest='skip_download_dayu', action='store_true', default=False,
help='specify whether to skip the download dayu or not')
return parser.parse_args()
def job(cmd):
subprocess.run(cmd, shell=False)
def run():
if not prepare_test():
return
job(os.path.join(".", "auto_xts_test", "run.bat"))
job(f'python {os.path.join(".", "sdk_test", "entry.py")}')
job(f'python {os.path.join(".", "performance_test", "performance_entry.py")}')
job(f'python {os.path.join(".", "utils", "send_email", "send_email.py")}')
if __name__ == '__main__':
schedule.every().day.at("02:10").do(run)
run()
while True:
schedule.run_pending()
time.sleep(1)