# HG changeset patch # User estrain # Date 1773403667 0 # Node ID 292d633441ad5bb269e4bfe1aedf26d08a80fc61 planemo upload commit c251e9b174b5370300a209b2b4c5e2052976eb2d diff -r 000000000000 -r 292d633441ad metaspades.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/metaspades.xml Fri Mar 13 12:07:47 2026 +0000 @@ -0,0 +1,221 @@ + + metagenome assembler (minimal; interlaced / R1+R2 / paired collection; maps list:paired) + + + spades + + + + + + + + + + 0 + mkdir -p lr_nanopore && + #for $lri, $lr in enumerate($longreads.nanopore) + #set $link = 'lr_nanopore/nano_%s.%s' % ($lri, $lr.ext) + ln -s '$lr' '$link' && + $nano_paths.append($link) + #end for +#end if + +#set $pbhifi_paths = [] +#if $longreads.pacbio_hifi and len($longreads.pacbio_hifi) > 0 + mkdir -p lr_pbhifi && + #for $lri, $lr in enumerate($longreads.pacbio_hifi) + #set $link2 = 'lr_pbhifi/pbhifi_%s.%s' % ($lri, $lr.ext) + ln -s '$lr' '$link2' && + $pbhifi_paths.append($link2) + #end for +#end if + +#set $nano_joined = ' '.join(["'%s'" % p for p in $nano_paths]) if $nano_paths else '' +#set $pbhifi_joined = ' '.join(["'%s'" % p for p in $pbhifi_paths]) if $pbhifi_paths else '' + +## ---------- +## Run SPAdes +## ---------- +metaspades.py + -o 'output' + -t \${GALAXY_SLOTS:-4} +#if $resources.ram_gb + -m ${resources.ram_gb} +#end if +## short-read layout +#if str($singlePaired.sPaired) == "paired_interlaced" + --${singlePaired.type_paired}-12 ${library} 'reads1/interlaced_1.${ext}' + --${singlePaired.type_paired}-or ${library} ${singlePaired.orientation} +#elif str($singlePaired.sPaired) == "paired_two_files" + --${singlePaired.type_paired}-1 ${library} 'paired_reads1/reads_1.${ext1}' + --${singlePaired.type_paired}-2 ${library} 'paired_reads1/reads_2.${ext2}' + --${singlePaired.type_paired}-or ${library} ${singlePaired.orientation} +#else + ## paired_collection (and list:paired maps to this one pair per job) + --${singlePaired.type_paired}-1 ${library} 'paired_reads1/reads_1.${extc}' + --${singlePaired.type_paired}-2 ${library} 'paired_reads1/reads_2.${extc}' + --${singlePaired.type_paired}-or ${library} ${singlePaired.orientation} +#end if +## long-reads +#if $nano_paths + --nanopore ${nano_joined} +#end if +#if $pbhifi_paths + --pacbio-hifi ${pbhifi_joined} +#end if +## chemistry / pipeline flags +#if $pipeline.iontorrent + --iontorrent +#end if +#if $pipeline.phred and str($pipeline.phred) != '' + --phred-offset ${pipeline.phred} +#end if +#if $pipeline.kmers and str($pipeline.kmers) != '' + -k '${pipeline.kmers}' +#end if + ]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+ +
+ +
+ + + + + + + +
+
+ + + + + + + + + + + + + 10.1101/gr.213959.116 + +
+ diff -r 000000000000 -r 292d633441ad test-data/corona_scaffold.fasta --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/corona_scaffold.fasta Fri Mar 13 12:07:47 2026 +0000 @@ -0,0 +1,18 @@ +>NODE_1_length_1009_cluster_1_candidate_1_domains_2 +GTTCAAGCTGAGGCAAAACGCCTTTTTCAACTTCTACTAAGCCACAAGTGCCATCTTTAG +GATGTTGACGTGCCTCTGATAAGACCGCCTCCACTGGAGGATACACAGGTTTAAAGGTTT +ATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAAC +GAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATA +ATTAATAACTAATTACTGTCGTTGACAGGACACGAGTAACTCGTCTATCTTCTGCAGGCT +GCTTACGGTTTCGTCCGTGTTGCAGCCGATCATCAGCACATCTAGGTTTCGTCCGGGTGT +GACCGAAAGGTAAGATGGAGAGCCTTGTCCCTGGTTTCAACGAGAAAACACACGTCCAAC +TCAGTTTGCCTGTTTTACAGGTTCGCGACGTGCTCGTACGTGGCTTTGGAGACTCCGTGG +AGGAGGTCTTATCAGAGGCACGTCAACATCTTAAAGATGGCACTTGTGGCTTAGTAGAAG +TTGAAAAAGGCGTTTTGCCTCAACTTGAACAGCCCTATGTGTTCATCAAACGTTCGGATG +CTCGAACTGCACCTCATGGTCATGTTATGGTTGAGCTGGTAGCAGAACTCGAAGGCATTC +AGTACGGTCGTAGTGGTGAGACACTTGGTGTCCTTGTCCCTCATGTGGGCGAAATACCAG +TGGCTTACCGCAAGGTTCTTCTTCGTAAGAACGGTAATAAAGGAGCTGGTGGCCATAGTT +ACGGCGCCGATCTAAAGTCATTTGACTTAGGCGACGAGCTTGGCACTGATCCTTATGAAG +ATTTAAGATGGCACTTGTGGCTTAGTAGAAGTTGAAAAAGGCGTTTTGCCTCAACTTGAA +CAGCCCTATGTGTTCATCAAACGTTCGGATGCTCGAACTGCACCTCCTGGTCATGTTGAG +CTGGTAGCAGAACTCGAAGGCATTCAGTACGGTCGTAGTGGTGAGACAC diff -r 000000000000 -r 292d633441ad write_tsv_script.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/write_tsv_script.py Fri Mar 13 12:07:47 2026 +0000 @@ -0,0 +1,16 @@ +#!/usr/bin/env python + +import re +import sys + +search_str = r"^>(NODE|\S+)_(\d+)(?:_|\s)length_(\d+)_cov_(\d+\.*\d*)(.*\$)?" + +replace_str = r"\1_\2\t\3\t\4" + +cmd = re.compile(search_str) + +sys.stdout.write("#name\tlength\tcoverage\n") + +for i, line in enumerate(sys.stdin): + if cmd.match(line): + sys.stdout.write(cmd.sub(replace_str, line))