Mercurial > repos > devteam > bowtie2
changeset 14:937aa69e715f draft
planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/bowtie2 commit 954b2052cb74a0bc88f65df37f429ff27c45ea8f
author | devteam |
---|---|
date | Wed, 12 Apr 2017 17:09:42 -0400 |
parents | 12450efac659 |
children | 43d12513224b |
files | bowtie2_wrapper.xml test-data/bowtie2-fq1.fq.bz2 test-data/bowtie2-fq1.fq.gz test-data/bowtie2-fq2.fq.bz2 test-data/bowtie2-fq2.fq.gz |
diffstat | 5 files changed, 133 insertions(+), 40 deletions(-) [+] |
line wrap: on
line diff
--- a/bowtie2_wrapper.xml Mon Jan 09 04:31:00 2017 -0500 +++ b/bowtie2_wrapper.xml Wed Apr 12 17:09:42 2017 -0400 @@ -1,4 +1,4 @@ -<tool id="bowtie2" name="Bowtie2" version="2.3.0"> +<tool id="bowtie2" name="Bowtie2" version="2.3.0.1" profile="17.01"> <description>- map reads against reference genome</description> <macros> <import>read_group_macros.xml</import> @@ -19,6 +19,66 @@ #set index_path = $reference_genome.index.fields.path #end if + ## Link in the input files, so bowtie2 can tell their type + + #set compressed="False" + #if str($library.type) == 'paired': + #if $library.input_1.is_of_type("fastq.gz", "fastqsanger.gz"): + #set read1 = "input_f.fastq.gz" + #set compressed = "GZ" + #else if $library.input_1.is_of_type("fastq.bz2", "fastqsanger.bz2"): + #set read1 = "input_f.fastq.bz2" + #set compressed = "BZ2" + #else: + #set read1 = "input_f.fastq" + #end if + ln -f -s '${library.input_1}' ${read1} && + + #if $library.input_2.is_of_type("fastq.gz", "fastqsanger.gz"): + #set read2 = "input_r.fastq.gz" + #set compressed = "GZ" + #else if $library.input_2.is_of_type("fastq.bz2", "fastqsanger.bz2"): + #set read2 = "input_r.fastq.bz2" + #set compressed = "BZ2" + #else: + #set read2 = "input_r.fastq" + #end if + ln -f -s '${library.input_2}' ${read2} && + #else if str($library.type) == 'paired_collection': + #if $library.input_1.forward.is_of_type("fastq.gz", "fastqsanger.gz"): + #set read1 = "input_f.fastq.gz" + #set compressed = "GZ" + #else if $library.input_1.forward.is_of_type("fastq.bz2", "fastqsanger.bz2"): + #set read1 = "input_f.fastq.bz2" + #set compressed = "BZ2" + #else: + #set read1 = "input_f.fastq" + #end if + ln -s '${library.input_1.forward}' ${read1} && + + #if $library.input_1.reverse.is_of_type("fastq.gz", "fastqsanger.gz"): + #set read2 = "input_r.fastq.gz" + #set compressed = "GZ" + #else if $library.input_1.reverse.is_of_type("fastq.bz2", "fastqsanger.bz2"): + #set read2 = "input_r.fastq.bz2" + #set compressed = "BZ2" + #else: + #set read2 = "input_r.fastq" + #end if + ln -s '${library.input_1.reverse}' ${read2} && + #else: + #if $library.input_1.is_of_type("fastq.gz", "fastqsanger.gz"): + #set read1 = "input_f.fastq.gz" + #set compressed = "GZ" + #else if $library.input_1.is_of_type("fastq.bz2", "fastqsanger.bz2"): + #set read1 = "input_f.fastq.bz2" + #set compressed = "BZ2" + #else: + #set read1 = "input_f.fastq" + #end if + ln -s '${library.input_1}' ${read1} && + #end if + ## execute bowtie2 bowtie2 @@ -31,16 +91,46 @@ ## Fastq inputs #if str( $library.type ) == "single": - -U '${library.input_1}' + -U '${read1}' #if str( $library.unaligned_file ) == "true": - --un '$output_unaligned_reads_l' + #if $compressed == "GZ": + --un-gz '${output_unaligned_reads_l}' + #else if $compressed == "BZ2": + --un-bz2 '${output_unaligned_reads_l}' + #else: + --un '${output_unaligned_reads_l}' + #end if #end if #if str( $library.aligned_file ) == "true": - --al '$output_aligned_reads_l' + #if $compressed == "GZ": + --al-gz '${output_aligned_reads_l}' + #else if $compressed == "BZ2": + --al-bz2 '${output_aligned_reads_l}' + #else: + --al '${output_aligned_reads_l}' + #end if #end if - #elif str( $library.type ) == "paired": - -1 '${library.input_1}' - -2 '${library.input_2}' + #else: + -1 '${read1}' + -2 '${read2}' + #if str( $library.unaligned_file ) == "true": + #if $compressed == "GZ": + --un-conc-gz '${output_unaligned_reads_l}' + #else if $compressed == "BZ2": + --un-conc-bz2 '${output_unaligned_reads_l}' + #else: + --un-conc '${output_unaligned_reads_l}' + #end if + #end if + #if str( $library.aligned_file ) == "true": + #if $compressed == "GZ": + --al-conc-gz '${output_aligned_reads_l}' + #else if $compressed == "BZ2": + --al-conc-bz2 '${output_aligned_reads_l}' + #else: + --al-conc '${output_aligned_reads_l}' + #end if + #end if #if str( $library.paired_options.paired_options_selector ) == "yes": -I "${library.paired_options.I}" -X "${library.paired_options.X}" @@ -51,29 +141,6 @@ ${library.paired_options.no_contain} ${library.paired_options.no_overlap} #end if - #if str( $library.unaligned_file ) == "true": - --un-conc $output_unaligned_reads_l - #end if - #if str( $library.aligned_file ) == "true": - --al-conc $output_aligned_reads_l - #end if - #else - ## prepare collection - -1 $library.input_1.forward - -2 $library.input_1.reverse - #if str( $library.paired_options.paired_options_selector ) == "yes": - -I "${library.paired_options.I}" - -X "${library.paired_options.X}" - ${library.paired_options.fr_rf_ff} - ${library.paired_options.no_mixed} - ${library.paired_options.no_discordant} - ${library.paired_options.dovetail} - ${library.paired_options.no_contain} - ${library.paired_options.no_overlap} - #end if - #if str( $library.unaligned_file ) == "true": - --un-conc '$output_unaligned_reads_l' - #end if #end if ## Read group information. @@ -209,15 +276,15 @@ </param> <when value="single"> - <param name="input_1" format="fastqsanger" type="data" label="FASTQ file" help="Must be of datatype "fastqsanger"" /> - <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> - <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc; This triggers --al parameter for single reads and --al-conc for paired reads" /> + <param name="input_1" format="fastqsanger,fastqsanger.gz,fastqsanger.bz2" type="data" label="FASTQ file" help="Must be of datatype "fastqsanger"" /> + <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc (possibly with -gz or -bz2); This triggers --un parameter for single reads and --un-conc for paired reads" /> + <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc (possibly with -gz or -bz2); This triggers --al parameter for single reads and --al-conc for paired reads" /> </when> <when value="paired"> - <param name="input_1" format="fastqsanger" type="data" label="FASTQ file #1" help="Must be of datatype "fastqsanger"" /> - <param name="input_2" format="fastqsanger" type="data" label="FASTQ file #2" help="Must be of datatype "fastqsanger"" /> - <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> - <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc; This triggers --al parameter for single reads and --al-conc for paired reads" /> + <param name="input_1" format="fastqsanger,fastqsanger.gz,fastqsanger.bz2" type="data" label="FASTQ file #1" help="Must be of datatype "fastqsanger"" /> + <param name="input_2" format="fastqsanger,fastqsanger.gz,fastqsanger.bz2" type="data" label="FASTQ file #2" help="Must be of datatype "fastqsanger"" /> + <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc (possibly with -gz or -bz2); This triggers --un parameter for single reads and --un-conc for paired reads" /> + <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc (possibly with -gz or -bz2); This triggers --al parameter for single reads and --al-conc for paired reads" /> <conditional name="paired_options"> <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> <option value="no" selected="True">No</option> @@ -243,9 +310,9 @@ </conditional> </when> <when value="paired_collection"> - <param name="input_1" format="fastqsanger" type="data_collection" collection_type="paired" label="FASTQ Paired Dataset" help="Must be of datatype "fastqsanger"" /> - <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> - <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc; This triggers --al parameter for single reads and --al-conc for paired reads" /> + <param name="input_1" format="fastqsanger,fastqsanger.gz,fastqsanger.bz2" type="data_collection" collection_type="paired" label="FASTQ Paired Dataset" help="Must be of datatype "fastqsanger"" /> + <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc (possibly with -gz or -bz2); This triggers --un parameter for single reads and --un-conc for paired reads" /> + <param name="aligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write aligned reads (in fastq format) to separate file(s)" help="--al/--al-conc (possibly with -gz or -bz2); This triggers --al parameter for single reads and --al-conc for paired reads" /> <conditional name="paired_options"> <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> <option value="no" selected="True">No</option> @@ -622,6 +689,32 @@ <output name="output" file="bowtie2-test1.bam" ftype="bam" lines_diff="2"/> <output name="mapping_stats" file="bowtie2-stats.out" ftype="txt"/> </test> + <test> + <!-- test fastqsanger.gz input --> + <param name="type" value="paired"/> + <param name="selection" value="no"/> + <param name="paired_options_selector" value="no"/> + <param name="unaligned_file" value="false"/> + <param name="analysis_type_selector" value="simple"/> + <param name="source" value="history" /> + <param name="input_1" value="bowtie2-fq1.fq.gz" ftype="fastqsanger.gz"/> + <param name="input_2" value="bowtie2-fq2.fq.gz" ftype="fastqsanger.gz"/> + <param name="own_file" value="bowtie2-ref.fasta" /> + <output name="output" file="bowtie2-test1.bam" ftype="bam" lines_diff="2"/> + </test> + <test> + <!-- test fastqsanger.bz2 input --> + <param name="type" value="paired"/> + <param name="selection" value="no"/> + <param name="paired_options_selector" value="no"/> + <param name="unaligned_file" value="false"/> + <param name="analysis_type_selector" value="simple"/> + <param name="source" value="history" /> + <param name="input_1" value="bowtie2-fq1.fq.bz2" ftype="fastqsanger.bz2"/> + <param name="input_2" value="bowtie2-fq2.fq.bz2" ftype="fastqsanger.bz2"/> + <param name="own_file" value="bowtie2-ref.fasta" /> + <output name="output" file="bowtie2-test1.bam" ftype="bam" lines_diff="2"/> + </test> </tests> <help><![CDATA[