Mercurial > repos > iuc > stacks_assembleperead
view stacks_assembleperead.xml @ 12:6eaf0f9836c8 draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/stacks commit 5f2ec13ecca435abaac2b99ba21f1d6497ec7139"
author | iuc |
---|---|
date | Tue, 22 Mar 2022 23:13:33 +0000 |
parents | 0c741f364d18 |
children | 38ecfb8d52c6 |
line wrap: on
line source
<tool id="stacks_assembleperead" name="Stacks: assemble read pairs by locus" version="@WRAPPER_VERSION@.1"> <description>run the STACKS sort_read_pairs.pl and exec_velvet.pl wrappers</description> <expand macro="bio_tools"/> <macros> <import>macros.xml</import> </macros> <expand macro="requirements" /> <expand macro="stdio"/> <command><![CDATA[ mkdir stacks_inputs reads stacks_outputs && #for $input_file in $stacks_col #set $ext = "" #if not str($input_file.element_identifier).endswith('.tsv') #set $ext = ".tsv" #end if ln -s '${input_file}' 'stacks_inputs/${input_file.element_identifier}${ext}' && #end for #for $input_file in $reads #set $name = str($input_file.element_identifier) ## sort_read_pairs is expecting strange fastq names: <sample_name>.fq_2 #if $name.endswith('.1.fq') ## handle a common case #set $name = $name[:-5]+".fq_1" #else if $name.endswith('.2.fq') ## handle a common case #set $name = $name[:-5]+".fq_2" #else if not $name.endswith('.fq') and not $name.endswith('.fq_2') ## no extension, consider it's a fq_2 file #set $name = $name + ".fq_2" #end if ln -s '${input_file}' 'reads/${name}' && #end for sort_read_pairs.pl -p stacks_inputs -s 'reads' #if $whitelist -w '$whitelist' #end if #if $threshold -r $threshold #end if -o stacks_outputs #if $velvet.use_velvet == "yes" ## remove possible empty files && find stacks_outputs -type f -size 0 -exec rm {} \; && mkdir assembled && velvet_path=`which velveth` && velvet_path=`dirname "\$velvet_path"` && exec_velvet.pl -s stacks_outputs -o assembled -c -M ${velvet.contig_length} -e "\$velvet_path" #end if ]]></command> <inputs> <param name="stacks_col" argument="-p" format="tabular,txt" type="data_collection" collection_type="list" label="Output from previous Stacks pipeline steps (e.g. denovo_map or refmap)" /> <param name="reads" argument="-s" format="fastqsanger" type="data" multiple="true" label="Files containing reads to assemble" help="only R2 reads" /> <param name="whitelist" argument="-w" format="txt,tabular" type="data" optional="true" label="White list of catalog IDs to include" /> <param name="threshold" argument="-r" type="integer" value="" optional="true" label="Minimum number of reads by locus"/> <conditional name="velvet"> <param name="use_velvet" type="select" label="Perform assembly with Velvet" help="If not selected, the tool will only produce of collection of fasta files (one per locus) containing reads ready to assemble."> <option value="no" selected="true">No</option> <option value="yes">Yes</option> </param> <when value="no"/> <when value="yes"> <param name="contig_length" type="integer" value="200" label="Minimum length for asssembled contigs"/> </when> </conditional> </inputs> <outputs> <collection name="collated" type="list" label="Collated FASTA files per locus on ${on_string}"> <filter>velvet['use_velvet'] == "no"</filter> <discover_datasets pattern="(?P<name>.+)\.fa(sta)?$" ext="fasta" directory="stacks_outputs" /> </collection> <data format="fasta" name="contigs" label="Assembled contigs on ${on_string}" from_work_dir="assembled/collated.fa"> <filter>velvet['use_velvet'] == "yes"</filter> </data> </outputs> <tests> <test> <param name="stacks_col"> <collection type="list"> <element name="batch_1.catalog.alleles.tsv" ftype="tabular" value="genotypes/batch_1.catalog.alleles.tsv" /> <element name="batch_1.catalog.snps.tsv" ftype="tabular" value="genotypes/batch_1.catalog.snps.tsv" /> <element name="batch_1.catalog.tags.tsv" ftype="tabular" value="genotypes/batch_1.catalog.tags.tsv" /> <element name="PopA_01.alleles.tsv" ftype="tabular" value="genotypes/PopA_01.alleles.tsv" /> <element name="PopA_01.matches.tsv" ftype="tabular" value="genotypes/PopA_01.matches.tsv" /> <element name="PopA_01.snps.tsv" ftype="tabular" value="genotypes/PopA_01.snps.tsv" /> <element name="PopA_01.tags.tsv" ftype="tabular" value="genotypes/PopA_01.tags.tsv" /> <element name="PopA_02.alleles.tsv" ftype="tabular" value="genotypes/PopA_02.alleles.tsv" /> <element name="PopA_02.matches.tsv" ftype="tabular" value="genotypes/PopA_02.matches.tsv" /> <element name="PopA_02.snps.tsv" ftype="tabular" value="genotypes/PopA_02.snps.tsv" /> <element name="PopA_02.tags.tsv" ftype="tabular" value="genotypes/PopA_02.tags.tsv" /> </collection> </param> <param name="reads" value="demultiplexed/PopA_01.2.fq,demultiplexed/PopA_02.2.fq" ftype="fastqsanger" /> <output_collection name="collated"> <element name="1"> <assert_contents> <has_text text="CCGATCAGCATCAGTAGTTTTCAACGAGCTGGCCCAATGGTGTATAACTATGTGGTAGAGAGAAACTGCTGCTATCACTCACGATATAAGCCCTCTGACG" /> </assert_contents> </element> </output_collection> </test> <test> <param name="stacks_col"> <collection type="list"> <element name="batch_1.catalog.alleles.tsv" ftype="tabular" value="genotypes/batch_1.catalog.alleles.tsv" /> <element name="batch_1.catalog.snps.tsv" ftype="tabular" value="genotypes/batch_1.catalog.snps.tsv" /> <element name="batch_1.catalog.tags.tsv" ftype="tabular" value="genotypes/batch_1.catalog.tags.tsv" /> <element name="PopA_01.alleles.tsv" ftype="tabular" value="genotypes/PopA_01.alleles.tsv" /> <element name="PopA_01.matches.tsv" ftype="tabular" value="genotypes/PopA_01.matches.tsv" /> <element name="PopA_01.snps.tsv" ftype="tabular" value="genotypes/PopA_01.snps.tsv" /> <element name="PopA_01.tags.tsv" ftype="tabular" value="genotypes/PopA_01.tags.tsv" /> <element name="PopA_02.alleles.tsv" ftype="tabular" value="genotypes/PopA_02.alleles.tsv" /> <element name="PopA_02.matches.tsv" ftype="tabular" value="genotypes/PopA_02.matches.tsv" /> <element name="PopA_02.snps.tsv" ftype="tabular" value="genotypes/PopA_02.snps.tsv" /> <element name="PopA_02.tags.tsv" ftype="tabular" value="genotypes/PopA_02.tags.tsv" /> </collection> </param> <param name="reads" value="demultiplexed/PopA_01.2.fq,demultiplexed/PopA_02.2.fq" ftype="fastqsanger" /> <param name="velvet|use_velvet" value="yes" /> <param name="velvet|contig_length" value="20" /> <output name="contigs"> <assert_contents> <has_text text="|NODE_" /> </assert_contents> </output> </test> </tests> <help> <![CDATA[ .. class:: infomark **What it does** This program will run each of the Stacks sort_read_pairs.pl and exec_velvet.pl utilities to assemble pair-end reads from STACKS pipeline results -------- **Input file** Output from denovo_map or ref_map **Output file** A collated.fa file containing assembled contigs for each locus @STACKS_INFOS@ ]]> </help> <expand macro="citation" /> </tool>