| import argparse |
| import csv |
| import os |
| import shutil |
| import sys |
| import subprocess |
| |
| |
| def parse_args(): |
| parser = argparse.ArgumentParser(description='Prepare CSAR for policy distrition performance test') |
| parser.add_argument('--total', required=True, type=int, help='total number of CSAR to be generated') |
| parser.add_argument('--dest', required=True, help='dest directory where the CSAR files will be stored') |
| parser.add_argument('--out', default='perf_data.csv', help='list of generated CSAR identifier') |
| return parser.parse_args(sys.argv[1:]) |
| |
| |
| def main(): |
| args = parse_args() |
| |
| # create dest dir |
| shutil.rmtree(args.dest, ignore_errors=True) |
| os.makedirs(args.dest) |
| |
| # prepartion |
| count = 0 |
| maxwidth = len(str(args.total)) |
| scripts = os.path.dirname(os.path.abspath(__file__)) |
| scripts = os.path.join(scripts, 'generate.sh') |
| |
| with open(args.out, 'w') as out_file: |
| out_writer = csv.writer(out_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) |
| while (count < args.total): |
| seed = str(count).zfill(maxwidth) |
| subprocess.check_call([scripts, args.dest, seed]) |
| out_writer.writerow(["s3p_" + seed]) |
| count += 1 |
| return 0 |
| |
| if __name__ == '__main__': |
| main() |