comparison tools/mira4_assembler/README.rst @ 1:70248e6e3efc draft

v0.0.7 move dependency to package_mira_4_0_2 etc
author peterjc
date Wed, 05 Aug 2015 11:31:05 -0400
parents
children
comparison
equal deleted inserted replaced
0:6a88b42ce6b9 1:70248e6e3efc
1 Galaxy wrapper for the MIRA assembly program (v4.0)
2 ===================================================
3
4 This tool is copyright 2011-2014 by Peter Cock, The James Hutton Institute
5 (formerly SCRI, Scottish Crop Research Institute), UK. All rights reserved.
6 See the licence text below (MIT licence).
7
8 This tool is a short Python script (to collect the MIRA output and move it
9 to where Galaxy expects the files) and associated Galaxy wrapper XML file.
10
11 It is available from the Galaxy Tool Shed at:
12 http://toolshed.g2.bx.psu.edu/view/peterjc/mira4_assembler
13
14 It uses a Galaxy datatype definition 'mira' for the MIRA Assembly Format,
15 http://toolshed.g2.bx.psu.edu/view/peterjc/mira_datatypes
16
17 A separate wrapper for MIRA v3.4 is available from the Galaxy Tool Shed at:
18 http://toolshed.g2.bx.psu.edu/view/peterjc/mira_assembler
19
20 Automated Installation
21 ======================
22
23 This should be straightforward. Via the Tool Shed, Galaxy should automatically
24 install the 'mira' datatype, samtools, and download and install the precompiled
25 binary for MIRA v4.0.2 for the Galaxy wrapper, and run any tests.
26
27 For MIRA 4, the Galaxy wrapper has been split in two, allowing separate
28 cluster settings for de novo usage (high RAM) and mapping (lower RAM).
29 Consult the Galaxy adminstration documentation for your cluster setup.
30
31 WARNING: For larger tasks, be aware that MIRA can require vast amounts
32 of RAM and run-times of over a week are possible. This tool wrapper makes
33 no attempt to spot and reject such large jobs.
34
35
36 Manual Installation
37 ===================
38
39 First install the 'mira' datatype for Galaxy, available here:
40
41 * http://toolshed.g2.bx.psu.edu/view/peterjc/mira_datatypes
42
43 There are four Galaxy files to install:
44
45 * ``mira4_de_novo.xml`` (the Galaxy tool definition for de novo usage)
46 * ``mira4_mapping.xml`` (the Galaxy tool definition for mapping usage)
47 * ``mira4_convert.xml`` (the Galaxy tool definition for converting MIRA files)
48 * ``mira4_bait.xml`` (the Galaxy tool definition for mirabait)
49 * ``mira4.py`` (the Python wrapper script)
50 * ``mira4_convert.py`` (the Python wrapper script for miraconvert)
51 * ``mira4_bait.py`` (the Python wrapper script for mirabait)
52 * ``mira4_validator.py`` (the XML parameter validation script)
53
54 The suggested location is a new ``tools/mira4`` folder. You will also need to
55 modify the ``tools_conf.xml`` file to tell Galaxy to offer the tool::
56
57 <tool file="mira4/mira4_de_novo.xml" />
58 <tool file="mira4/mira4_mapping.xml" />
59
60 You will also need to install MIRA, we used version 4.0.2, and define the
61 environment variable ``$MIRA4`` pointing at the folder containing the binaries.
62 See:
63
64 * http://chevreux.org/projects_mira.html
65 * http://sourceforge.net/projects/mira-assembler/
66
67 You may wish to use different cluster setups for the de novo and mapping
68 tools, see above.
69
70 You will also need to install samtools (for generating a BAM file from MIRA's
71 SAM output).
72
73 If you wish to run the unit tests, also move/copy the ``test-data/`` files
74 under Galaxy's ``test-data/`` folder. Then::
75
76 $ ./run_tests.sh -id mira_4_0_bait
77 $ ./run_tests.sh -id mira_4_0_de_novo
78 $ ./run_tests.sh -id mira_4_0_mapping
79 $ ./run_tests.sh -id mira_4_0_convert
80
81
82 History
83 =======
84
85 ======= ======================================================================
86 Version Changes
87 ------- ----------------------------------------------------------------------
88 v0.0.1 - Initial version (prototype for MIRA 4.0 RC4, based on wrapper for v3.4)
89 v0.0.2 - Include BAM output (using ``miraconvert`` and ``samtools``).
90 - Updated to target MIRA 4.0.1
91 - Simplified XML to apply input format to output data.
92 - Sets temporary folder at run time to respect environment variables
93 (``$TMPDIR``, ``$TEMP``, or ``$TMP`` in that order). This was
94 previously hard coded as ``/tmp``.
95 v0.0.3 - Updated to target MIRA 4.0.2
96 v0.0.4 - Using ``optparse`` for the Python wrapper script API
97 - Made MAF and BAM outputs optional
98 - Include wrapper for ``miraconvert``
99 v0.0.5 - Tool definition now embeds citation information.
100 v0.0.6 - Fixed error handling in ``mira4_convert.py``.
101 v0.0.7 - Renamed folder (internal change only).
102 - Reorder XML elements (internal change only).
103 - Use the ``format_source=...`` tag in the MIRA bait wrapper.
104 - Planemo for Tool Shed upload (``.shed.yml``, internal change only).
105 - MIRA 4.0.2 dependency now declared via dedicated Tool Shed package.
106 ======= ======================================================================
107
108
109 Developers
110 ==========
111
112 Development is on a dedicated GitHub repository:
113 https://github.com/peterjc/pico_galaxy/tree/master/tools/mira4_assembler
114
115 For pushing a release to the test or main "Galaxy Tool Shed", use the following
116 Planemo commands (which requires you have set your Tool Shed access details in
117 ``~/.planemo.yml`` and that you have access rights on the Tool Shed)::
118
119 $ planemo shed_update --shed_target testtoolshed --check_diff ~/repositories/pico_galaxy/tools/mira4_assembler/
120 ...
121
122 or::
123
124 $ planemo shed_update --shed_target toolshed --check_diff ~/repositories/pico_galaxy/tools/mira4_assembler/
125 ...
126
127 To just build and check the tar ball, use::
128
129 $ planemo shed_upload --tar_only ~/repositories/pico_galaxy/tools/mira4_assembler/
130 ...
131 $ tar -tzf shed_upload.tar.gz
132 test-data/U13small_m.fastq
133 test-data/U13small_m.mira4_de_novo.fasta
134 test-data/ecoli.fastq
135 test-data/ecoli.mira4_de_novo.fasta
136 test-data/empty_file.dat
137 test-data/header.mira
138 test-data/tvc_mini.fastq
139 test-data/tvc_contigs.fasta
140 test-data/tvc_map_ref_strain.fasta
141 test-data/tvc_map_same_strain.fasta
142 test-data/tvc_bait.fasta
143 test-data/tvc_mini_bait_neg.fastq
144 test-data/tvc_mini_bait_pos.fastq
145 test-data/tvc_mini_bait_strict.fastq
146 tools/mira4_assembler/README.rst
147 tools/mira4_assembler/mira4.py
148 tools/mira4_assembler/mira4_bait.py
149 tools/mira4_assembler/mira4_convert.py
150 tools/mira4_assembler/mira4_de_novo.xml
151 tools/mira4_assembler/mira4_make_bam.py
152 tools/mira4_assembler/mira4_mapping.xml
153 tools/mira4_assembler/mira4_validator.py
154 tools/mira4_assembler/repository_dependencies.xml
155 tools/mira4_assembler/tool_dependencies.xml
156
157
158 Licence (MIT)
159 =============
160
161 Permission is hereby granted, free of charge, to any person obtaining a copy
162 of this software and associated documentation files (the "Software"), to deal
163 in the Software without restriction, including without limitation the rights
164 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
165 copies of the Software, and to permit persons to whom the Software is
166 furnished to do so, subject to the following conditions:
167
168 The above copyright notice and this permission notice shall be included in
169 all copies or substantial portions of the Software.
170
171 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
172 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
173 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
174 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
175 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
176 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
177 THE SOFTWARE.