Repository revision
8:5b26685e5d3b

Repository 'spades_metaviralspades'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades

metaviralSPAdes tool metadata
Miscellaneous
extract and assembly viral genomes from metagenomic data
spades_metaviralspades
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.5+galaxy1
3.15.5+galaxy1
spades.py --version 2>&1 | awk -F 'v' '{print $2}'
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.5+galaxy2
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.5+galaxy1 (this tool)
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.4+galaxy2
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.4+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.4+galaxy0
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.3+galaxy2
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.3+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/spades_metaviralspades/spades_metaviralspades/3.15.3+galaxy0
spades_metaviralspades
Requirements (dependencies defined in the <requirements> tag set)
name version type
spades 3.15.5 package
zip 3.0 package
Additional information about this tool
#set $library = 1


#if $singlePaired.sPaired == "single" or $singlePaired.sPaired == "paired_interlaced"
    mkdir -p reads1 &&
    #set file_paths1 = []
    #for $input_file in $singlePaired.input1
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'reads1/' + $fname
        ln -s '$input_file' '$file_path' &&
        $file_paths1.append($file_path)
    #end for
#else if $singlePaired.sPaired == "paired"
    mkdir -p paired_reads1 &&
    #set fw_reads1 = []
    #for $input_file in $singlePaired.input1
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'paired_reads1/' + str($fname)
        ln -s '$input_file' '$file_path' &&
        $fw_reads1.append($file_path)
    #end for
    #set rv_reads1 = []
    #for $input_file in $singlePaired.input2
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'paired_reads1/' + str($fname)
        ln -s '$input_file' '$file_path' &&
        $rv_reads1.append($file_path)
    #end for
    #silent $fw_reads1.sort()
    #silent $rv_reads1.sort()
#else
    mkdir -p paired_reads1 &&
    #set fw_reads1 = []
    #set rv_reads1 = []
    #for $i, $input_file in enumerate($singlePaired.input)
        #set $ext = $input_file.forward.ext.replace('fastqsanger', 'fastq')
        #set $file_path = 'paired_reads1/fw' + str($i) + '.' + $ext
        ln -s '$input_file.forward' '$file_path' &&
        $fw_reads1.append($file_path)
        #set $file_path = 'paired_reads1/rv' + str($i) + '.' + $ext
        ln -s '$input_file.reverse' '$file_path' &&
        $rv_reads1.append($file_path)
    #end for
#end if

#if $additional_reads.selector == 'true'
    
#if $additional_reads.singlePaired.sPaired == "single" or $additional_reads.singlePaired.sPaired == "paired_interlaced"
    mkdir -p reads2 &&
    #set file_paths2 = []
    #for $input_file in $additional_reads.singlePaired.input1
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'reads2/' + $fname
        ln -s '$input_file' '$file_path' &&
        $file_paths2.append($file_path)
    #end for
#else if $additional_reads.singlePaired.sPaired == "paired"
    mkdir -p paired_reads2 &&
    #set fw_reads2 = []
    #for $input_file in $additional_reads.singlePaired.input1
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'paired_reads2/' + str($fname)
        ln -s '$input_file' '$file_path' &&
        $fw_reads2.append($file_path)
    #end for
    #set rv_reads2 = []
    #for $input_file in $additional_reads.singlePaired.input2
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = $input_file.element_identifier.replace(" ","_") + '.' + $ext
        #set $file_path = 'paired_reads2/' + str($fname)
        ln -s '$input_file' '$file_path' &&
        $rv_reads2.append($file_path)
    #end for
    #silent $fw_reads2.sort()
    #silent $rv_reads2.sort()
#else
    mkdir -p paired_reads2 &&
    #set fw_reads2 = []
    #set rv_reads2 = []
    #for $i, $input_file in enumerate($additional_reads.singlePaired.input)
        #set $ext = $input_file.forward.ext.replace('fastqsanger', 'fastq')
        #set $file_path = 'paired_reads2/fw' + str($i) + '.' + $ext
        ln -s '$input_file.forward' '$file_path' &&
        $fw_reads2.append($file_path)
        #set $file_path = 'paired_reads2/rv' + str($i) + '.' + $ext
        ln -s '$input_file.reverse' '$file_path' &&
        $rv_reads2.append($file_path)
    #end for
#end if

#end if

#if $arf.nanopore
    mkdir -p nanopore_reads &&
    #set nanopore_reads = []
    #for $i, $input_file in enumerate($arf.nanopore,1)
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = 'file' + str($i) + '.' + $ext
        #set $file_path = 'nanopore_reads/' + $fname
        ln -s '$input_file' '$file_path' &&
        $nanopore_reads.append($file_path)
    #end for
#end if
#if $arf.pacbio
    mkdir -p pacbio_reads &&
    #set pacbio_reads = []
    #for $i, $input_file in enumerate($arf.pacbio,1)
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = 'file' + str($i) + '.' + $ext
        #set $file_path = 'pacbio_reads/' + $fname
        ln -s '$input_file' '$file_path' &&
        $pacbio_reads.append($file_path)
    #end for
#end if


    #if $arf.sanger
        mkdir -p sanger_reads &&
        #set sanger_reads = []
        #for $i, $input_file in enumerate($arf.sanger,1)
            #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
            #set $fname = 'file' + str($i) + '.' + $ext
            #set $file_path = 'sanger_reads/' + $fname
            ln -s '$input_file' '$file_path' &&
            $sanger_reads.append($file_path)
        #end for
    #end if


#if $arf.trusted_contigs
    mkdir -p trusted_contigs &&
    #set trusted_contigs = []
    #for $i, $input_file in enumerate($arf.trusted_contigs,1)
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = 'file' + str($i) + '.' + $ext
        #set $file_path = 'trusted_contigs/' + $fname
        ln -s '$input_file' '$file_path' &&
        $trusted_contigs.append($file_path)
    #end for
#end if
#if $arf.untrusted_contigs
    mkdir -p untrusted_contigs &&
    #set untrusted_contigs = []
    #for $i, $input_file in enumerate($arf.untrusted_contigs,1)
        #set $ext = $input_file.ext.replace('fastqsanger', 'fastq')
        #set $fname = 'file' + str($i) + '.' + $ext
        #set $file_path = 'untrusted_contigs/' + $fname
        ln -s '$input_file' '$file_path' &&
        $untrusted_contigs.append($file_path)
    #end for
#end if


    #if $arf.assembly_graph
        mkdir -p assembly_graphs &&
        #set assembly_graphs = []
        #for $i, $input_file in enumerate($arf.assembly_graph,1)
            #set $ext = $input_file.ext.replace('gfa1', 'gfa')
            #set $fname = 'file' + str($i) + '.' + $ext
            #set $file_path = 'assembly_graphs/' + $fname
            ln -s '$input_file' '$file_path' &&
            $assembly_graphs.append($file_path)
        #end for
    #end if



export OMP_THREAD_LIMIT=\${GALAXY_SLOTS:-4} &&

## run
spades.py --metaviral
    $operation_mode
    -o 'output'
    
-t \${GALAXY_SLOTS:-4}
-m \$((\${GALAXY_MEMORY_MB:-8192}/1024))
--tmp-dir \${TMPDIR}	

    
#if $singlePaired.sPaired == "single"
    #for $read in $file_paths1
        --s $library '${read}'
    #end for
#else if  $singlePaired.sPaired == "paired"
    #for $read in $fw_reads1
        --${singlePaired.type_paired}-1 $library '${read}'
    #end for
    #for $read in $rv_reads1
        --${singlePaired.type_paired}-2 $library '${read}'
        --${singlePaired.type_paired}-or $library $singlePaired.orientation
    #end for
#else if $singlePaired.sPaired == "paired_interlaced"
    #for $read in $file_paths1
        --${singlePaired.type_paired}-12 $library '${read}'
        --${singlePaired.type_paired}-or $library $singlePaired.orientation
    #end for
#else
    #for $read in $fw_reads1
        --${singlePaired.type_paired}-1 $library '${read}'
    #end for
    #for $read in $rv_reads1
        --${singlePaired.type_paired}-2 $library '${read}'
        --${singlePaired.type_paired}-or $library $singlePaired.orientation
    #end for
#end if

    #if $additional_reads.selector == 'true'
        

#if $additional_reads.selector == 'true' and  $additional_reads.library_number == 'false'
    #set $library += 1
#end if

#if $additional_reads.singlePaired.sPaired == "single"
    #for $read in $file_paths2
        --s $library '${read}'
    #end for
#else if  $additional_reads.singlePaired.sPaired == "paired"
    #for $read in $fw_reads2
        --${additional_reads.singlePaired.type_paired}-1 $library '${read}'
    #end for
    #for $read in $rv_reads2
        --${additional_reads.singlePaired.type_paired}-2 $library '${read}'
        --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
    #end for
#else if $additional_reads.singlePaired.sPaired == "paired_interlaced"
    #for $read in $file_paths2
        --${additional_reads.singlePaired.type_paired}-12 $library '${read}'
        --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
    #end for
#else
    #for $read in $fw_reads2
        --${additional_reads.singlePaired.type_paired}-1 $library '${read}'
    #end for
    #for $read in $rv_reads2
        --${additional_reads.singlePaired.type_paired}-2 $library '${read}'
        --${additional_reads.singlePaired.type_paired}-or $library $additional_reads.singlePaired.orientation
    #end for
#end if

    #end if
    ## reads
    
#if $arf.nanopore
    #for $read in $nanopore_reads
        --nanopore $read
    #end for
#end if
#if $arf.pacbio
    #for $read in $pacbio_reads
        --pacbio $read
    #end for
#end if

    
#if $arf.sanger
    #for $read in $sanger_reads
        --sanger $read
    #end for
#end if

    
#if $arf.trusted_contigs
    #for $read in $trusted_contigs
        --trusted-contigs $read
    #end for
#end if
#if $arf.untrusted_contigs
    #for $read in $untrusted_contigs
        --untrusted-contigs $read
    #end for
#end if

    
#if $arf.assembly_graph
    #for $graph in $assembly_graphs
        --assembly-graph $graph
    #end for
#end if

    ## parameter
    
#if $kmer_cond.kmer_sel != 'auto'
    -k '$kmer_cond.manual'
#end if

    
#if $phred_offset != 'auto'
    --phred-offset $phred_offset
#end if

    
#for $i in $mode_sel
    $i
#end for

    ## postprocessing
    
#if 'cs' in $optional_output
    && test -f 'output/contigs.fasta' && python '$__tool_directory__/write_tsv_script.py' < 'output/contigs.fasta' > '$out_cs' || echo 'No contigs.fasta.'
#end if
#if 'ss' in $optional_output
    && test -f 'output/scaffolds.fasta' && python '$__tool_directory__/write_tsv_script.py' < 'output/scaffolds.fasta' > '$out_ss' || echo 'No scaffolds.fasta.'
#end if

    
    #if 'corrected' in $optional_output
        && test -d 'output/corrected' && zip -q -r 'corrected.zip' 'output/corrected/*.fastq.gz' || echo 'No output files for corrected reads.'
    #end if

    
None
False
Functional tests
name inputs outputs required files
Test-1 singlePaired|input1: pl1.fq.gz
singlePaired|input2: pl2.fq.gz
singlePaired|sPaired: paired
name: value
name: value
pl1.fq.gz
pl2.fq.gz
value
Test-2 singlePaired|input1: pl1.fq.gz
singlePaired|input2: pl2.fq.gz
singlePaired|sPaired: paired
kmer_cond|manual: 33
kmer_cond|kmer_sel: manual
phred_offset: 33
optional_output: ['cn', 'cs', 'cr', 'sc', 'ss', 'l']
name: value
name: value
name: value
name: value
name: value
pl1.fq.gz
pl2.fq.gz
value
Test-3 singlePaired|input1: pl1.fq.gz
singlePaired|input2: pl2.fq.gz
singlePaired|sPaired: paired
operation_mode: --only-assembler
optional_output: l
name: value
pl1.fq.gz
pl2.fq.gz
value
Test-4 singlePaired|input1: pl1.fq.gz
singlePaired|input2: pl2.fq.gz
singlePaired|sPaired: paired
operation_mode: --only-error-correction
optional_output: ['cr', 'l']
name: value
pl1.fq.gz
pl2.fq.gz
value