in perfmetrics/scripts/ls_metrics/listing_benchmark.py [0:0]
def _parse_arguments(argv):
"""Parses the arguments provided to the script via command line.
Args:
argv: List of arguments received by the script.
Returns:
A class containing the parsed arguments.
"""
argv = sys.argv
parser = argparse.ArgumentParser()
parser.add_argument(
'config_file',
help='Provide path of the config file.',
action='store'
)
parser.add_argument(
'--keep_files',
help='Does not delete the directory structure in persistent disk.',
action='store_true',
default=False,
required=False,
)
parser.add_argument(
'--upload_gs',
help='Upload the results to the Google Sheet.',
action='store_true',
default=False,
required=False,
)
parser.add_argument(
'--upload_bq',
help='Upload the results to the BigQuery.',
action='store_true',
default=False,
required=False,
)
parser.add_argument(
'--message',
help='Puts a message/title describing the test.',
action='store',
nargs=1,
default=['Performance Listing Benchmark'],
required=False,
)
parser.add_argument(
'--config_id',
help='Configuration ID of the experiment.',
action='store',
nargs=1,
required=False,
)
parser.add_argument(
'--start_time_build',
help='Start time of the build.',
action='store',
nargs=1,
required=False,
)
parser.add_argument(
'--num_samples',
help='Number of samples to collect of each test.',
action='store',
nargs=1,
default=[10],
required=False,
)
parser.add_argument(
'--command',
help='Command to run the tests on.',
action='store',
nargs=1,
default=['ls -R'],
required=False,
)
parser.add_argument(
'--gcsfuse_flags',
help='Gcsfuse flags for mounting the list tests bucket. Example set of flags - "--implicit-dirs --max-conns-per-host 100 --debug_fuse --debug_gcs --log-file gcsfuse-list-logs.txt --log-format \"text\" --stackdriver-export-interval=30s"',
action='store',
nargs=1,
required=True,
)
parser.add_argument(
'--spreadsheet_id',
help='Provide id of spreadsheet',
action='store',
required=False,
)
parser.add_argument(
'--run_1m_test',
help='Perform listing benchmark on 1m files directory? [True/False]',
action='store_true',
default=False,
required=False,
)
# Ignoring the first parameter, as it is the path of this python
# script itself.
return parser.parse_args(argv[1:])