diff sambamba.xml @ 2:7ad3484aa5db draft

"planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/sambamba commit ea1ce99d707fcf2d64f6f2cd96fdd1754f344df1"
author artbio
date Thu, 30 Dec 2021 02:06:08 +0000
parents 6195f15d4541
children de833cc76a8e
line wrap: on
line diff
--- a/sambamba.xml	Mon May 25 17:10:17 2020 -0400
+++ b/sambamba.xml	Thu Dec 30 02:06:08 2021 +0000
@@ -1,4 +1,4 @@
-<tool id="sambamba_sample_or_filter" name="Sample or Filter BAM" version="0.6">
+<tool id="sambamba_sample_or_filter" name="Sample or Filter BAM" version="0.7.1+galaxy0">
     <description>
         on flags, fields, and tags using Sambamba
     </description>
@@ -12,30 +12,38 @@
     <command detect_errors="exit_code"><![CDATA[
         ln -s $input input.bam &&
         ln -s $input.metadata.bam_index input.bai &&
+
         #if $sambamba_options.selector == 'filter'
             sambamba view -h -t \${GALAXY_SLOTS:-4}
             #if $sambamba_options.query != '':
                 --filter='$sambamba_options.query'
             #end if
-                -f '$format' -o $outfile input.bam $sambamba_options.region
-         #else
-             sambamba view -h -t \${GALAXY_SLOTS:-4} -f '$format'
-             --subsampling-seed='$sambamba_options.seed'
-             -s '$sambamba_options.fraction' -o '$outfile' input.bam
-         #end if
+                -f '$sambamba_options.format'
+                -o $outfile input.bam $sambamba_options.region
+
+        #else if $sambamba_options.selector == 'sample'
+            sambamba view -h -t \${GALAXY_SLOTS:-4} -f '$sambamba_options.format'
+                 --subsampling-seed='$sambamba_options.seed'
+                 -s '$sambamba_options.fraction'
+                 -o '$outfile' input.bam
+
+        #else
+            sambamba slice -o '$outfile' input.bam $sambamba_options.region
+        #end if
     ]]></command>
     <inputs>
-        <param name="input" type="data" format="bam" label="BAM or SAM file to filter"/>
-        <param name="format" type="select" label="format of the tool output">
-            <option value="bam">BAM</option>
-            <option value="sam">SAM</option>
-        </param>
+        <param name="input" type="data" format="bam" label="BAM or SAM input file(s)"/>
         <conditional name="sambamba_options">
-            <param name="selector" type="select" label="Filter or Down-sample alignments">
+            <param name="selector" type="select" label="Filter, Down-sample or slice alignments">
                 <option value="sample">Down-sample bam or sam alignments</option>
                 <option value="filter" selected="true">Filter bam or sam alignements</option>
+                <option value="slice">Slice bam or sam alignements by chromosome or chromosome region</option>
             </param>
             <when value="filter">
+                <param name="format" type="select" label="format of the tool output">
+                    <option value="bam">BAM</option>
+                    <option value="sam">SAM</option>
+                </param>
                 <param name="query" type="text" size="80">
                     <sanitizer invalid_char="X">
                         <valid initial="string.ascii_letters,string.digits, string.punctuation">
@@ -54,7 +62,24 @@
                     </help>
                 </param>
             </when>
+
+            <when value="slice">
+                <param name="region" type="text" size="40" label="Region in format chr:beg-end">
+                    <help>
+                    Regions can be specified as 'chr2' (the whole chr2), 'chr2:1000000'
+                    (region starting from 1,000,000bp) or 'chr2:1,000,000-2,000,000'
+                    (region between 1,000,000 and 2,000,000bp including the end points).
+                    The coordinates are 1-based. NOTE that sambamba slice only outputs
+                    BAM-format datasets.
+                    </help>
+                </param>
+            </when>
+
             <when value="sample">
+                <param name="format" type="select" label="format of the tool output">
+                    <option value="bam">BAM</option>
+                    <option value="sam">SAM</option>
+                </param>
                 <param name="seed" type="integer" value="123" size="10">
                     <label>Seed value for randomisation</label>
                     <help>
@@ -72,9 +97,9 @@
         </conditional>
     </inputs>
     <outputs>
-        <data name="outfile" format="bam">
+        <data name="outfile" format="bam" label="Filter, slice or sample on ${on_string}">
             <change_format>
-                <when input="format" value="sam" format="sam" />
+                <when input="sambamba_options['format']" value="sam" format="sam" />
             </change_format>
         </data>
     </outputs>
@@ -85,7 +110,7 @@
             <param name="query" value="[H0] == 1 and read_name =~ /^EAS51_62/" />
             <param name="format" value="bam" />
             <param name="region" value="" />
-            <output name="outfile" file="ex1_header_filtered.bam" ftype="bam" />
+            <output name="outfile" file="ex1_header_filtered.bam" ftype="bam" lines_diff="2"/>
         </test>
         <test>
             <param name="input" value="c1215_fixmate.bam" ftype="bam" />
@@ -103,13 +128,20 @@
             <param name="region" value="AL096846:1000-5000" />
             <output name="outfile" file="c1215_fixmate_region-filtered.sam" ftype="sam" lines_diff="2"/>
         </test>
+        <test>
+            <param name="input" value="c1215_fixmate.bam" ftype="bam" />
+            <param name="selector" value="slice" />
+            <param name="query" value='' />
+            <param name="region" value="AL096846:1000-2000 AL096846:4000-5000" />
+            <output name="outfile" file="c1215_fixmate_region-sliced.bam" ftype="bam"/>
+        </test>
          <test>
             <param name="input" value="ex1_header.sam" ftype="sam" />
             <param name="selector" value="sample" />
             <param name="seed" value="123" />
             <param name="fraction" value="0.1" />
             <param name="format" value="bam" />
-            <output name="outfile" file="ex1_header_sampled.bam" ftype="bam" />
+            <output name="outfile" file="ex1_header_sampled.bam" ftype="bam" lines_diff="2"/>
         </test>
         <test>
             <param name="input" value="c1215_fixmate.bam" ftype="bam" />