EichlerLab / smrtsv2

Structural variant caller
MIT License
53 stars 6 forks source link

--tempdir is an unrecognized argument #9

Closed rozaimirazali closed 5 years ago

rozaimirazali commented 5 years ago

Hello.

The --tempdir argument will do that. If --tempdir is not set, it uses tempfile.gettempdir(). This function resolves the temporary directory based on environment variables and falls back to /tmp if none are set (See https://docs.python.org/3.7/library/tempfile.html#tempfile.gettempdir).

I tried adding --tempdir but I am getting this error message in my stderr file:

usage: smrtsv.py [-h] [--dryrun] [--distribute] [--jobs JOBS] [--tempdir TEMPDIR] [--verbose] [--cluster-config CLUSTER_CONFIG] [--cluster-params CLUSTER_PARAMS] [--drmaalib DRMAALIB] [--job-prefix JOB_PREFIX] [--keep-going] [--nt] [--log LOG] [--wait-time WAIT_TIME] {index,align,detect,assemble,call,run,genotype} ... smrtsv.py: error: unrecognized arguments: --tempdir --verbose --log GRCh37.fa multi_runs.fofn

My command is:

bsub -q qgp -P assembly -m JRNAS1 -R span[hosts=1] -e smrtsv.er -o smrtsv.o -J smrtsv -n 32 "smrtsv.py run --tempdir ../tmp --verbose --batches 32 --threads 32 --log log.txt GRCh37.fa multi_runs.fofn"

paudano commented 5 years ago

Put the --tempdir argument before run. It processes command-line arguments in two steps using python's argparse package (parser and subparser). --tempdir applies to all SMRT-SV commands, so it goes before the command name (run in this case). Each command has a set of options specific to it, and they go after the command name.