def get_parser():
    parser = argparse.ArgumentParser('Run performance test')
    parser.add_argument('conn', help='number of connections, comma separated list', type=csv_to_int)
    parser.add_argument('qps', help='qps, comma separated list', type=csv_to_int)
    parser.add_argument('duration', help='duration in seconds of the extract', type=int)
    parser.add_argument('--size', help='size of the payload', type=int, default=1024)
    parser.add_argument('--mesh', help='istio or linkerd', default='istio')
    parser.add_argument('--mixer_mode', help='run with different mixer configurations: mixer, nomixer, mixerv2', default='mixer')
    parser.add_argument('--client', help='where to run the test from', default=None)
    parser.add_argument('--server', help='pod ip of the server', default=None)
    parser.add_argument('--perf', help='also run perf and produce flame graph', default=False)
    parser.add_argument('--ingress', help='run traffic through ingress', default=None)
    parser.add_argument('--labels', help='extra labels', default=None)
    parser.add_argument('--mode', help='http or grpc', default='http')
    define_bool(parser, 'baseline', 'run baseline for all', False)
    define_bool(parser, 'serversidecar', 'run serversidecar-only for all', False)
    define_bool(parser, 'clientsidecar', 'run clientsidecar and serversidecar for all', True)
    return parser
def get_parser():
    parser = argparse.ArgumentParser('Run performance test')
    parser.add_argument('conn', help='number of connections, comma separated list', type=csv_to_int)
    parser.add_argument('qps', help='qps, comma separated list', type=csv_to_int)
    parser.add_argument('duration', help='duration in seconds of the extract', type=int)
    parser.add_argument('--size', help='size of the payload', type=int, default=1024)
    parser.add_argument('--mesh', help='istio or linkerd', default='istio')
    parser.add_argument('--mixer_mode', help='run with different mixer configurations: mixer, nomixer, mixerv2', default='mixer')
    parser.add_argument('--client', help='where to run the test from', default=None)
    parser.add_argument('--server', help='pod ip of the server', default=None)
    parser.add_argument('--perf', help='also run perf and produce flame graph', default=False)
    parser.add_argument('--ingress', help='run traffic through ingress', default=None)
    parser.add_argument('--labels', help='extra labels', default=None)
    parser.add_argument('--mode', help='http or grpc', default='http')
    define_bool(parser, 'baseline', 'run baseline for all', False)
    define_bool(parser, 'serversidecar', 'run serversidecar-only for all', False)
    define_bool(parser, 'clientsidecar', 'run clientsidecar and serversidecar for all', True)
    return parser