diff cactus_export.xml @ 0:c18157c68134 draft

"planemo upload for repository https://github.com/usegalaxy-au/tools-au commit 8f8363625623f2ff3f04d12d227673ac134eba24"
author galaxy-australia
date Mon, 04 Apr 2022 06:26:16 +0000
parents
children 5bf688a3ee2c
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cactus_export.xml	Mon Apr 04 06:26:16 2022 +0000
@@ -0,0 +1,130 @@
+<tool id="cactus_export" name="Cactus: export" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@" license="MIT">
+    <description>whole-genome multiple sequence alignment to other formats.</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="xrefs"/>
+    <expand macro="requirements"/>
+    <command detect_errors="exit_code"><![CDATA[
+        ln -s '$hal_file' alignment.hal 
+
+        ## make a MAF
+
+        #if $enable_maf.maf_selector:
+            &&
+            hal2maf alignment.hal
+            #if str($enable_maf.ref_level):
+                --refGenome $enable_maf.ref_level
+            #end if
+            alignment.maf
+        #end if
+
+        ## make a VG
+
+        #if $vg_selector:
+            &&
+            hal2vg alignment.hal
+            --hdf5InMemory
+            --chop 32
+            --progress 
+            > alignment.pg
+        #end if
+
+    ]]></command>
+    <inputs>
+        <param name="hal_file" type="data" format="h5" label="HAL file" help="Multiple-genome alignment generated by Cactus" />
+        <conditional name="enable_maf"> 
+            <param name="maf_selector" type="boolean" checked="false" label="Generate a MAF file" />
+            <when value="true">
+                <param name="ref_level" type="text" optional="True" value="" label="Optional: reference genome for MAF" help="Specify one of the Input Genomes as the reference level for the Multiple Alignment Format (MAF) file. This must match the label used in 'Genome Label'. If nothing is specified, the first Input Genome will be the reference genome in the MAF file. This option doesn't affect the HAL output." />
+            </when>
+            <when value="false">
+            </when>
+        </conditional>
+        <param name="vg_selector" type="boolean" checked="false" label="Generate a VG file" />
+    </inputs>
+    <outputs>
+        <data name="out_maf" format="maf" from_work_dir="alignment.maf" label="${tool.name} on ${on_string} (MAF file)" >
+            <filter>enable_maf['maf_selector']</filter>
+        </data>
+        <data name="out_vg" format="vg" from_work_dir="alignment.pg" label="${tool.name} on ${on_string} (VG file)" >
+            <filter>vg_selector</filter>
+        </data>
+    </outputs>
+    <tests>
+        <!-- within-species mode -->
+        <test expect_num_outputs="1">
+            <conditional name="enable_maf"> 
+                <param name="maf_selector" value="true" />
+            </conditional>
+            <param name="hal_file" ftype="h5" value="evolverMammals.hal" />
+            <output name="out_maf" file="hal2maf.maf" />
+        </test>
+        <!-- set reference level -->
+        <test expect_num_outputs="1">
+            <conditional name="enable_maf"> 
+                <param name="maf_selector" value="true" />
+                <param name="ref_level" value="simMouse_chr6" />
+            </conditional>
+            <param name="hal_file" ftype="h5" value="within.hal" />
+            <output name="out_maf" file="set_reference.maf" />
+        </test>
+        <!-- between-species, select reference level  -->
+        <test expect_num_outputs="1">
+            <conditional name="enable_maf"> 
+                <param name="maf_selector" value="true" />
+                <param name="ref_level" value="simMouse_chr6" />
+            </conditional>
+            <param name="hal_file" ftype="h5" value="evolverMammals_noroot.hal" />
+            <output name="out_maf" file="evolverMammals_noroot.maf" />
+        </test>
+        <!-- vg format -->
+        <test expect_num_outputs="1">
+            <param name="vg_selector" value="true" />
+            <param name="hal_file" ftype="h5" value="within.hal" />
+            <output name="out_vg">
+                <assert_contents>
+                        <has_size value="3586577" delta="200000" />
+                </assert_contents>
+            </output>
+        </test>
+        <!-- vg and maf with reference level -->
+        <test expect_num_outputs="2">
+            <conditional name="enable_maf"> 
+                <param name="maf_selector" value="true" />
+                <param name="ref_level" value="simMouse_chr6" />
+            </conditional>
+            <param name="vg_selector" value="true" />
+            <param name="hal_file" ftype="h5" value="evolverMammals_noroot.hal" />
+            <output name="out_maf" file="evolverMammals_both.maf" />
+            <output name="out_vg" >
+                <assert_contents>
+                        <has_size value="53055101" delta="200000" />
+                </assert_contents>
+            </output>
+        </test>
+        <!-- gfa format (gfa2): not implemented -->
+    </tests>
+    <help><![CDATA[
+**What it does**
+
+Converts the HAL output from `Cactus whole-genome multiple sequence
+aligner <root?tool_id=cactus_cactus>`__ into other formats.
+
+**Input**
+
+A `HAL
+file <https://github.com/ComparativeGenomicsToolkit/cactus#using-the-output>`__
+from `Cactus <root?tool_id=cactus_cactus>`__.
+
+**Output**
+
+Currently, you can export a pangenome in VG format, for use with
+`vg <https://github.com/vgteam/vg>`__, and/or Multiple Alignment Format
+(MAF). Note that MAF is **reference-based**, so it will contain
+alignments to a single reference from your list of inputs (i.e. not a
+graph). By default, the first input genome will be used as the
+reference. You can override this with the ‘reference genome’ option.
+]]></help>
+    <expand macro="citations"/>
+</tool>