Loading ci/run_scheduled_sanitizer_test.py 0 → 100644 +70 −0 Original line number Diff line number Diff line #!/usr/bin/env python3 import argparse import sys import subprocess import pathlib DURATION = "120" CFG = "ci_linux.json" TESTS = [ "CLANG1", "CLANG2" ] TESTS = [ "CLANG2" ] EP_FILE = "ep_015.g192" SCRIPT_DIR = pathlib.Path("./scripts").resolve() def main(args): in_format = args.in_format out_formats = args.out_formats modes = get_modes(in_format) returncode = run_check(modes, out_formats) sys.exit(returncode) def get_modes(in_format: str) -> list: cmd = [SCRIPT_DIR.joinpath("runIvasCodec.py"), "-l"] list_process = subprocess.run(cmd, capture_output=True) output = list_process.stdout.decode("utf8") return [m for m in output.splitlines() if in_format in m] def run_check(modes: list, out_formats: list): cmd = [ SCRIPT_DIR.joinpath("IvasBuildAndRunChecks.py"), "-U", DURATION, "-p", CFG, "--checks", *TESTS, "-m", *modes, "--oc", *out_formats ] proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE) for c in iter(lambda: proc.stdout.read(1), b""): sys.stdout.buffer.write(c) proc.wait() if proc.returncode not in [0, 101]: raise IvasBuildAndRunFailed() return proc.returncode class IvasBuildAndRunFailed(Exception): pass if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("in_format", type=str) parser.add_argument("out_formats", type=str, nargs="+") sys.exit(main(parser.parse_args())) No newline at end of file Loading
ci/run_scheduled_sanitizer_test.py 0 → 100644 +70 −0 Original line number Diff line number Diff line #!/usr/bin/env python3 import argparse import sys import subprocess import pathlib DURATION = "120" CFG = "ci_linux.json" TESTS = [ "CLANG1", "CLANG2" ] TESTS = [ "CLANG2" ] EP_FILE = "ep_015.g192" SCRIPT_DIR = pathlib.Path("./scripts").resolve() def main(args): in_format = args.in_format out_formats = args.out_formats modes = get_modes(in_format) returncode = run_check(modes, out_formats) sys.exit(returncode) def get_modes(in_format: str) -> list: cmd = [SCRIPT_DIR.joinpath("runIvasCodec.py"), "-l"] list_process = subprocess.run(cmd, capture_output=True) output = list_process.stdout.decode("utf8") return [m for m in output.splitlines() if in_format in m] def run_check(modes: list, out_formats: list): cmd = [ SCRIPT_DIR.joinpath("IvasBuildAndRunChecks.py"), "-U", DURATION, "-p", CFG, "--checks", *TESTS, "-m", *modes, "--oc", *out_formats ] proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE) for c in iter(lambda: proc.stdout.read(1), b""): sys.stdout.buffer.write(c) proc.wait() if proc.returncode not in [0, 101]: raise IvasBuildAndRunFailed() return proc.returncode class IvasBuildAndRunFailed(Exception): pass if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("in_format", type=str) parser.add_argument("out_formats", type=str, nargs="+") sys.exit(main(parser.parse_args())) No newline at end of file