import sys
import os
import argparse
import shutil
import subprocess
import multiprocessing
sys.path.append(
os.path.dirname(os.path.dirname(os.path.dirname(
os.path.abspath(__file__)))))
def copytree(source: str, destination: str):
shutil.copytree(source, destination, dirs_exist_ok=True)
def copy_file(fuzz_config_file_path: str, fuzz_config_file_output_path: str):
if not os.path.exists(fuzz_config_file_path):
raise Exception("fuzz_config_file_path '{}' doesn't exist.".format(fuzz_config_file_path))
target_file_path = os.path.join(fuzz_config_file_output_path, os.path.basename(fuzz_config_file_path))
try:
p = multiprocessing.Process(target=copytree, args=(fuzz_config_file_path, target_file_path))
p.start()
p.join()
except Exception as e:
subprocess.call(["cp", "-rf", fuzz_config_file_path, fuzz_config_file_output_path])
def main():
parser = argparse.ArgumentParser()
parser.add_argument('--fuzz-config-file-path', required=True)
parser.add_argument('--fuzz-config-file-output-path', required=True)
args = parser.parse_args()
copy_file(args.fuzz_config_file_path, args.fuzz_config_file_output_path)
return 0
if __name__ == '__main__':
sys.exit(main())