changeset 15:b73962f8fcbf draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bedtools commit c5007eff737fcabb28fa726ac40f13a1cd4893c1
author iuc
date Wed, 05 Jul 2017 17:12:00 -0400
parents 304a594a7ef6
children e0cec48a4695
files all_fasta.loc.sample closestBed.xml tool-data/all_fasta.loc.sample tool-data/all_gff.loc.sample tool_data_table_conf.xml.sample
diffstat 5 files changed, 103 insertions(+), 64 deletions(-) [+]
line wrap: on
line diff
--- a/all_fasta.loc.sample	Sun May 14 14:07:52 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-#This file lists the locations and dbkeys of all the fasta files
-#under the "genome" directory (a directory that contains a directory
-#for each build). The script extract_fasta.py will generate the file
-#all_fasta.loc. This file has the format (white space characters are
-#TAB characters):
-#
-#<unique_build_id>	<dbkey>	<display_name>	<file_path>
-#
-#So, all_fasta.loc could look something like this:
-#
-#apiMel3	apiMel3	Honeybee (Apis mellifera): apiMel3	/path/to/genome/apiMel3/apiMel3.fa
-#hg19canon	hg19	Human (Homo sapiens): hg19 Canonical	/path/to/genome/hg19/hg19canon.fa
-#hg19full	hg19	Human (Homo sapiens): hg19 Full	/path/to/genome/hg19/hg19full.fa
-#
-#Your all_fasta.loc file should contain an entry for each individual
-#fasta file. So there will be multiple fasta files for each build,
-#such as with hg19 above.
-#
--- a/closestBed.xml	Sun May 14 14:07:52 2017 -0400
+++ b/closestBed.xml	Wed Jul 05 17:12:00 2017 -0400
@@ -5,52 +5,70 @@
     </macros>
     <expand macro="requirements" />
     <expand macro="stdio" />
-    <command>
-<![CDATA[
-        #set inputBs = "' '".join([str( $file ) for $file in $inputB])
-
-        closestBed
-        $strand
-        $addition
-        #if $addition2.addition2_select:
-            -D $addition2.addition2_select
-            $addition2.iu
-            $addition2.id
-        #end if
-        $io
-        -mdb $mdb
-        -t $ties
-        #if $k:
-            -k $k
-        #end if
-        -a '$inputA'
-        -b '$inputBs'
-        > '$output'
-]]>
-    </command>
+    <command><![CDATA[
+closestBed
+$strand
+$addition
+#if $addition2.addition2_select:
+    -D $addition2.addition2_select
+    $addition2.iu
+    $addition2.id
+#end if
+$io
+-mdb $mdb
+-t $ties
+#if str($k):
+    -k $k
+#end if
+-a '$inputA'
+#if str($overlap_with.source) == "data_table":
+    -b '$overlap_with.table.fields.path'
+#else
+    #set inputBs = "' '".join([str( $file ) for $file in $overlap_with.inputB])
+    -b '$inputBs'
+#end if
+> '$output'
+    ]]></command>
     <inputs>
-        <param format="bed,vcf,gff,gff3" name="inputA" type="data" label="BED/VCF/GFF file"/>
-        <param format="bed,gff,vcf,gff3" name="inputB" type="data" multiple="True" label="overlap intervals in this BED/VCF/GFF file?"/>
+        <param name="inputA" type="data" format="bed,vcf,gff,gff3" label="BED/VCF/GFF file"/>
+        <!-- overlap with file (inputB) -->
+        <conditional name="overlap_with">
+            <param name="source" type="select" label="Overlap with: will you select a BED/VCF/GFF file from your history or use a built-in GFF file?" help="Built-in GFF files contain full annotation of a reference genome">
+                <option value="history" selected="true">Use a BED/VCF/GFF file from the history</option>
+                <option value="data_table">Use a built-in GFF file</option>
+            </param>
+            <when value="data_table">
+                <param name="table" type="select" label="Select reference GFF" help="If your genome of interest is not listed, contact the Galaxy team">
+                    <options from_data_table="all_gff">
+                        <filter type="sort_by" column="2"/>
+                        <validator type="no_options" message="No files are available"/>
+                    </options>
+                </param>
+            </when>
+            <when value="history">
+                <param name="inputB" type="data" format="bed,gff,vcf,gff3" multiple="true" label="Select a BED/VCF/GFF file" />
+            </when>
+        </conditional>
 
         <param name="ties" type="select"
             label="How ties for closest feature should be handled"
             help="This occurs when two features in B have exactly the same overlap with a feature in A.">
-            <option value="all" selected="True">all - Report all ties (default)</option>
+            <option value="all" selected="true">all - Report all ties (default)</option>
             <option value="first">first - Report the first tie that occurred in the B file</option>
             <option value="last">last - Report the last tie that occurred in the B file</option>
         </param>
 
         <expand macro="strand2" />
 
-        <param name="addition" type="boolean" checked="false" truevalue="-d" falsevalue=""
+        <param name="addition" argument="-d" type="boolean" truevalue="-d" falsevalue="" checked="false"
             label="In addition to the closest feature in B, report its distance to A as an extra column"
-            help="The reported distance for overlapping features will be 0. (-d)" />
+            help="The reported distance for overlapping features will be 0" />
 
         <conditional name="addition2">
-            <param name="addition2_select" type="select"
+            <param name="addition2_select" argument="-D" type="select"
                 label="Add additional columns to report distance to upstream feature. Distance defintion"
-                help="Like -d, report the closest feature in B, and its distance to A as an extra column. However unlike -d, use negative distances to report upstream features. (-D)">
-                <option value="" selected="True">Do not report the distance et all.</option>
+                help="Like -d, report the closest feature in B, and its distance to A as an extra column. However unlike -d, use negative distances to report upstream features">
+                <option value="" selected="true">Do not report the distance et all.</option>
                 <option value="ref">Report distance with respect to the reference genome. B features with a lower (start, stop) are upstream. (-ref)</option>
                 <option value="a">Report distance with respect to A. When A is on the - strand, "upstream" means B has a higher (start,stop). (-a)</option>
                 <option value="b">Report distance with respect to B. When B is on the - strand, "upstream" means A has a higher (start,stop). (-b)</option>
@@ -67,39 +85,41 @@
             </when>
         </conditional>
 
-        <param name="k" type="integer" value="1" optional="True" min="1"
-            label="Report the k closest hits" help="(-k)"/>
+        <param argument="-k" type="integer" min="1" value="1" optional="true"
+            label="Report the k closest hits" />
 
-        <param name="io" type="boolean" checked="false" truevalue="-io" falsevalue=""
+        <param argument="-io" type="boolean" truevalue="-io" falsevalue="" checked="false"
             label="Ignore features in B that overlap A"
-            help="That is, we want close, yet not touching features only. (-io)" />
+            help="That is, we want close, yet not touching features only" />
 
-        <param name="mdb" type="select" optional="True"
-            label="How multiple databases are resolved"
-            help="(-mdb)">
-            <option value="each" selected="True">Report closest records for each database. (-each)</option>
+        <param argument="-mdb" type="select"
+            label="How multiple databases are resolved">
+            <option value="each" selected="true">Report closest records for each database. (-each)</option>
             <option value="all">Report closest records among all databases. (-all)</option>
         </param>
     </inputs>
     <outputs>
         <!-- Would like to use a nicer name, but since there are possibly many inputB datasets, falling back to ${on_string} -->
         <!-- <data format_source="inputA" name="output" metadata_source="inputA" label="Closest regions from ${inputB[0].name} to ${inputA.name}"/> -->
-        <data format_source="inputA" name="output" metadata_source="inputA" label="Closest regions from ${on_string}"/>
+        <data name="output" format_source="inputA" metadata_source="inputA" label="Closest regions from ${on_string}" />
     </outputs>
     <tests>
         <test>
             <param name="inputA" value="closestBedA.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="closestBedB.bed" ftype="bed" />
             <output name="output" file="closestBed_result1.bed" ftype="bed" />
         </test>
         <test>
             <param name="inputA" value="closestBed_a.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="closestBed_b1.bed,closestBed_b2.bed" ftype="bed" />
-            <param name="addition" value="True" />
+            <param name="addition" value="true" />
             <output name="output" file="closestBed_result2.bed" ftype="bed" />
         </test>
         <test>
             <param name="inputA" value="closestBed_a.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="closestBed_b1.bed,closestBed_b2.bed" ftype="bed" />
             <param name="addition" value="True" />
             <param name="mdb" value="all" />
@@ -107,34 +127,34 @@
         </test>
         <test>
             <param name="inputA" value="closestBed_c.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="closestBed_d.bed" ftype="bed" />
             <param name="addition2_select" value="ref" />
             <output name="output" file="closestBed_result4.bed" ftype="bed" />
         </test>
         <test>
             <param name="inputA" value="closestBed_c.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="closestBed_d.bed" ftype="bed" />
             <param name="addition2_select" value="a" />
             <output name="output" file="closestBed_result5.bed" ftype="bed" />
         </test>
         <test>
             <param name="inputA" value="closestBedA.bed" ftype="bed" />
+            <param name="source" value="history" />
             <param name="inputB" value="a.bed" ftype="bed" />
             <param name="k" value="3" />
             <output name="output" file="closestBed_result6.bed" ftype="bed" />
         </test>
     </tests>
-    <help>
-<![CDATA[
+    <help><![CDATA[
 **What it does**
 
 Similar to intersectBed, closestBed searches for overlapping features in A and B. In the event that no feature in B overlaps the current feature in A, closestBed will report the closest (that is, least genomic distance from the start or end of A) feature in B. For example, one might want to find which is the closest gene to a significant GWAS polymorphism. Note that closestBed will report an overlapping feature as the closest—that is, it does not restrict to closest non-overlapping feature.
 
 .. image:: $PATH_TO_IMAGES/closest-glyph.png
 
-
 @REFERENCES@
-]]>
-    </help>
+    ]]></help>
     <expand macro="citations" />
 </tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/all_fasta.loc.sample	Wed Jul 05 17:12:00 2017 -0400
@@ -0,0 +1,18 @@
+#This file lists the locations and dbkeys of all the fasta files
+#under the "genome" directory (a directory that contains a directory
+#for each build). The script extract_fasta.py will generate the file
+#all_fasta.loc. This file has the format (white space characters are
+#TAB characters):
+#
+#<unique_build_id>	<dbkey>	<display_name>	<file_path>
+#
+#So, all_fasta.loc could look something like this:
+#
+#apiMel3	apiMel3	Honeybee (Apis mellifera): apiMel3	/path/to/genome/apiMel3/apiMel3.fa
+#hg19canon	hg19	Human (Homo sapiens): hg19 Canonical	/path/to/genome/hg19/hg19canon.fa
+#hg19full	hg19	Human (Homo sapiens): hg19 Full	/path/to/genome/hg19/hg19full.fa
+#
+#Your all_fasta.loc file should contain an entry for each individual
+#fasta file. So there will be multiple fasta files for each build,
+#such as with hg19 above.
+#
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tool-data/all_gff.loc.sample	Wed Jul 05 17:12:00 2017 -0400
@@ -0,0 +1,14 @@
+#This file lists the locations and dbkeys of all the GFF files
+#This file has the format (white space characters are
+#TAB characters):
+#
+#<unique_build_id>	<dbkey>	<display_name>	<file_path>
+#
+#So, all_gff.loc could look something like this:
+#
+#apiMel3	apiMel3	Honeybee (Apis mellifera): apiMel3	/path/to/annotation/apiMel3/apiMel3.gff
+#hg19canon	hg19	Human (Homo sapiens): hg19 Canonical	/path/to/annotation/hg19/hg19canon.gff
+#hg19full	hg19	Human (Homo sapiens): hg19 Representative transcripts	/path/to/annotation/hg19/hg19_representative_tx.gff
+#
+#Your all_gff.loc file should contain an entry for each different annotation.
+#So there can be multiple gff files for each build, such as with hg19 above.
--- a/tool_data_table_conf.xml.sample	Sun May 14 14:07:52 2017 -0400
+++ b/tool_data_table_conf.xml.sample	Wed Jul 05 17:12:00 2017 -0400
@@ -4,4 +4,9 @@
         <columns>value, dbkey, name, path</columns>
         <file path="tool-data/all_fasta.loc" />
     </table>
+    <!-- Locations of all gff files with annotations of genome builds -->
+    <table name="all_gff" comment_char="#">
+        <columns>value, dbkey, name, path</columns>
+        <file path="tool-data/all_gff.loc" />
+    </table>	
 </tables>