def add_sra_subparser(subparser):
    """
    Function to add subparser for SRA data.
    """
    parser_sra = subparser.add_parser('sra', help='download from SRA')
    parser_sra.add_argument('id', type=str, nargs='+', help=
        'One or more BioProject, ERR/SRR or ERP/SRP number(s)')
    parser_sra.add_argument('-m', dest='metadata', type=str, default='',
        help=
        'filename in which to save SRA metadata (.csv format, relative to OUTDIR)'
        )
    parser_sra.add_argument('-o', dest='outdir', type=str, default='', help
        ="directory in which to save output. created if it doesn't exist")
    parser_sra.add_argument('-r', dest='retries', type=int, default=2, help
        ='number of times to retry download')
    parser_sra.add_argument('-t', dest='threads', type=int, default=1, help
        ='threads to use (for fasterq-dump/pigz)')
    parser_sra.add_argument('-f', dest='force', action='store_true', help=
        'force re-download of files')
    parser_sra.add_argument('-l', dest='list', action='store_true', help=
        'list (but do not download) samples to be grabbed')
    parser_sra.add_argument('--parse_run_ids', dest='SRR_parsing', action=
        'store_true', help=
        'parse SRR/ERR identifers (do not pass straight to fasterq-dump)')
    parser_sra.add_argument('--use_fastq_dump', dest='fastqdump', action=
        'store_true', help=
        'use legacy fastq-dump instead of fasterq-dump (no multithreaded downloading)'
        )
    parser_sra.add_argument('--custom_fqdump_args', dest='custom_fqd_args',
        type=str, default='', help=
        "'string' containing args to pass to fast(er)q-dump")
    parser_sra.add_argument('--no_parsing', dest='no_SRR_parsing', action=
        'store_true', help='Legacy option to not parse SRR IDs (now default)')
