comparison stacks_denovomap.xml @ 3:bab631cc9f64 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/stacks commit e1c1550e0bd61c88ffead2b1c4f6ab7393052393
author iuc
date Sat, 25 Jun 2016 17:28:47 -0400
parents 9d588fb2aee5
children 998dfec32bde
comparison
equal deleted inserted replaced
2:b8827c571fbd 3:bab631cc9f64
1 <tool id="stacks_denovomap" name="Stacks: de novo map" version="@WRAPPER_VERSION@.0"> 1 <tool id="stacks_denovomap" name="Stacks: de novo map" version="@WRAPPER_VERSION@.1">
2 <description>the Stacks pipeline without a reference genome (denovo_map.pl)</description> 2 <description>the Stacks pipeline without a reference genome (denovo_map.pl)</description>
3 <macros> 3 <macros>
4 <import>macros.xml</import> 4 <import>macros.xml</import>
5 </macros> 5 </macros>
6 <expand macro="requirements"/> 6 <expand macro="requirements"/>
11 11
12 #if str( $options_usage.rad_analysis_type ) == "genetic": 12 #if str( $options_usage.rad_analysis_type ) == "genetic":
13 #for $input_parent in $options_usage.parent_sequences: 13 #for $input_parent in $options_usage.parent_sequences:
14 14
15 #if $input_parent.ext == "fastqsanger": 15 #if $input_parent.ext == "fastqsanger":
16 #set $data_path = splitext($input_parent.name)[0] 16 #set $data_path = splitext($input_parent.element_identifier)[0]
17 #set $data_path = re.sub(r'\.1$', '', $data_path) 17 #set $data_path = re.sub(r'\.1$', '', $data_path)
18 #set $data_path = $data_path + ".fq" 18 #set $data_path = $data_path + ".fq"
19 #else: 19 #else:
20 #set $data_path = splitext($input_parent.name)[0] 20 #set $data_path = splitext($input_parent.element_identifier)[0]
21 #set $data_path = re.sub(r'\.1$', '', $data_path) 21 #set $data_path = re.sub(r'\.1$', '', $data_path)
22 #set $data_path = $data_path + ".fa" 22 #set $data_path = $data_path + ".fa"
23 #end if 23 #end if
24 24
25 ln -s "${input_parent}" "${data_path}" && 25 ln -s "${input_parent}" "${data_path}" &&
26 #end for 26 #end for
27 27
28 #for $input_progeny in $options_usage.progeny_sequences: 28 #for $input_progeny in $options_usage.progeny_sequences:
29 29 #if $input_progeny:
30 #if $input_progeny.ext == "fastqsanger": 30 #if $input_progeny.ext == "fastqsanger":
31 #set $data_path = splitext($input_progeny.name)[0] 31 #set $data_path = splitext($input_progeny.element_identifier)[0]
32 #set $data_path = re.sub(r'\.1$', '', $data_path)
33 #set $data_path = $data_path + ".fq"
34 #else:
35 #set $data_path = splitext($input_progeny.element_identifier)[0]
36 #set $data_path = re.sub(r'\.1$', '', $data_path)
37 #set $data_path = $data_path + ".fa"
38 #end if
39
40 ln -s "${input_progeny}" "${data_path}" &&
41 #end if
42 #end for
43 #else:
44 #for $input_indiv in $options_usage.individual_sample:
45
46 #if $input_indiv.ext == "fastqsanger":
47 #set $data_path = splitext($input_indiv.element_identifier)[0]
32 #set $data_path = re.sub(r'\.1$', '', $data_path) 48 #set $data_path = re.sub(r'\.1$', '', $data_path)
33 #set $data_path = $data_path + ".fq" 49 #set $data_path = $data_path + ".fq"
34 #else: 50 #else:
35 #set $data_path = splitext($input_progeny.name)[0] 51 #set $data_path = splitext($input_indiv.element_identifier)[0]
36 #set $data_path = re.sub(r'\.1$', '', $data_path) 52 #set $data_path = re.sub(r'\.1$', '', $data_path)
37 #set $data_path = $data_path + ".fa" 53 #set $data_path = $data_path + ".fa"
38 #end if 54 #end if
39 55
40 ln -s "${input_progeny}" "${data_path}" &&
41 #end for
42 #else:
43 #for $input_indiv in $options_usage.individual_sample:
44
45 #if $input_indiv.ext == "fastqsanger":
46 #set $data_path = splitext($input_indiv.name)[0]
47 #set $data_path = re.sub(r'\.1$', '', $data_path)
48 #set $data_path = $data_path + ".fq"
49 #else:
50 #set $data_path = splitext($input_indiv.name)[0]
51 #set $data_path = re.sub(r'\.1$', '', $data_path)
52 #set $data_path = $data_path + ".fa"
53 #end if
54
55 ln -s "${input_indiv}" "${data_path}" && 56 ln -s "${input_indiv}" "${data_path}" &&
56 #end for 57 #end for
57 #end if 58 #end if
58 59
59 mkdir stacks_outputs 60 mkdir stacks_outputs
65 -T \${GALAXY_SLOTS:-1} 66 -T \${GALAXY_SLOTS:-1}
66 67
67 #if str( $options_usage.rad_analysis_type ) == "genetic": 68 #if str( $options_usage.rad_analysis_type ) == "genetic":
68 #for $input_parent in $options_usage.parent_sequences: 69 #for $input_parent in $options_usage.parent_sequences:
69 #if $input_parent.ext == "fastqsanger": 70 #if $input_parent.ext == "fastqsanger":
70 #set $data_path = splitext($input_parent.name)[0] 71 #set $data_path = splitext($input_parent.element_identifier)[0]
71 #set $data_path = re.sub(r'\.1$', '', $data_path) 72 #set $data_path = re.sub(r'\.1$', '', $data_path)
72 #set $data_path = $data_path + ".fq" 73 #set $data_path = $data_path + ".fq"
73 #else: 74 #else:
74 #set $data_path = splitext($input_parent.name)[0] 75 #set $data_path = splitext($input_parent.element_identifier)[0]
75 #set $data_path = re.sub(r'\.1$', '', $data_path) 76 #set $data_path = re.sub(r'\.1$', '', $data_path)
76 #set $data_path = $data_path + ".fa" 77 #set $data_path = $data_path + ".fa"
77 #end if 78 #end if
78 79
79 -p "${data_path}" 80 -p "${data_path}"
80 #end for 81 #end for
81 82
82 -A $options_usage.cross_type 83 -A $options_usage.cross_type
83 84
84 #for $input_progeny in $options_usage.progeny_sequences: 85 #for $input_progeny in $options_usage.progeny_sequences:
85 #if $input_progeny.ext == "fastqsanger": 86 #if $input_progeny:
86 #set $data_path = splitext($input_progeny.name)[0] 87 #if $input_progeny.ext == "fastqsanger":
87 #set $data_path = re.sub(r'\.1$', '', $data_path) 88 #set $data_path = splitext($input_progeny.element_identifier)[0]
88 #set $data_path = $data_path + ".fq" 89 #set $data_path = re.sub(r'\.1$', '', $data_path)
89 #else: 90 #set $data_path = $data_path + ".fq"
90 #set $data_path = splitext($input_progeny.name)[0] 91 #else:
91 #set $data_path = re.sub(r'\.1$', '', $data_path) 92 #set $data_path = splitext($input_progeny.element_identifier)[0]
92 #set $data_path = $data_path + ".fa" 93 #set $data_path = re.sub(r'\.1$', '', $data_path)
94 #set $data_path = $data_path + ".fa"
95 #end if
96
97 -r "${data_path}"
93 #end if 98 #end if
94
95 -r "${data_path}"
96 #end for 99 #end for
97 100
98 #if str($assembly_options.P): 101 #if str($assembly_options.P):
99 -P $assembly_options.P 102 -P $assembly_options.P
100 #end if 103 #end if
101 #else: 104 #else:
102 #for $i_indiv, $input_indiv in enumerate($options_usage.individual_sample): 105 #for $i_indiv, $input_indiv in enumerate($options_usage.individual_sample):
103 106
104 #if $input_indiv.ext == "fastqsanger": 107 #if $input_indiv.ext == "fastqsanger":
105 #set $data_path = splitext($input_indiv.name)[0] 108 #set $data_path = splitext($input_indiv.element_identifier)[0]
106 #set $data_path = re.sub(r'\.1$', '', $data_path) 109 #set $data_path = re.sub(r'\.1$', '', $data_path)
107 #set $data_path = $data_path + ".fq" 110 #set $data_path = $data_path + ".fq"
108 #else: 111 #else:
109 #set $data_path = splitext($input_indiv.name)[0] 112 #set $data_path = splitext($input_indiv.element_identifier)[0]
110 #set $data_path = re.sub(r'\.1$', '', $data_path) 113 #set $data_path = re.sub(r'\.1$', '', $data_path)
111 #set $data_path = $data_path + ".fa" 114 #set $data_path = $data_path + ".fa"
112 #end if 115 #end if
113 116
114 -s "${data_path}" 117 -s "${data_path}"
154 <param name="rad_analysis_type" type="select" label="Select your usage"> 157 <param name="rad_analysis_type" type="select" label="Select your usage">
155 <option value="genetic" selected="true">Genetic map</option> 158 <option value="genetic" selected="true">Genetic map</option>
156 <option value="population">Population</option> 159 <option value="population">Population</option>
157 </param> 160 </param>
158 <when value="genetic"> 161 <when value="genetic">
159 <param name="parent_sequences" argument="-p" format="fastqsanger,fasta" type="data" multiple="true" label="Files containing parent sequences" help="Files containing parent sequences from a mapping cross" /> 162 <param name="parent_sequences" argument="-p" format="fastqsanger,fasta" type="data" multiple="true" label="Files containing parent sequences" help="Files containing parent sequences from a mapping cross (only R1 reads). Dataset names will be used as sample name (no space allowed)." />
160 163
161 <param name="progeny_sequences" argument="-r" format="fastqsanger,fasta" type="data" multiple="true" optional="true" label="Files containing progeny sequences" help="files containing progeny sequences from a mapping cross" /> 164 <param name="progeny_sequences" argument="-r" format="fastqsanger,fasta" type="data" multiple="true" optional="true" label="Files containing progeny sequences" help="files containing progeny sequences from a mapping cross (only R1 reads). Dataset names will be used as sample name (no space allowed)." />
162 165
163 <param name="cross_type" argument="-A" type="select" label="Cross type"> 166 <param name="cross_type" argument="-A" type="select" label="Cross type">
164 <expand macro="cross_types"/> 167 <expand macro="cross_types"/>
165 </param> 168 </param>
166 </when> 169 </when>
167 <when value="population"> 170 <when value="population">
168 <param name="individual_sample" argument="-s" format="fastqsanger,fasta" type="data" multiple="true" label="Files containing an individual sample from a population" help="files containing an individual sample from a population" /> 171 <param name="individual_sample" argument="-s" format="fastqsanger,fasta" type="data" multiple="true" label="Files containing an individual sample from a population" help="files containing an individual sample from a population (only R1 reads). Dataset names will be used as sample name (no space allowed)." />
169 <param name="popmap" argument="-O" type="data" format="tabular,txt" label="Specify a population map" /> 172 <param name="popmap" argument="-O" type="data" format="tabular,txt" label="Specify a population map" />
170 </when> 173 </when>
171 </conditional> 174 </conditional>
172 175
173 <!-- stack assembly options --> 176 <!-- stack assembly options -->
196 199
197 <expand macro="genotypes_output_light"/> 200 <expand macro="genotypes_output_light"/>
198 <expand macro="populations_output_light"/> 201 <expand macro="populations_output_light"/>
199 202
200 <collection name="tags" type="list" label="Assembled loci from ${on_string}"> 203 <collection name="tags" type="list" label="Assembled loci from ${on_string}">
201 <discover_datasets pattern="(?P&lt;name&gt;.+\.tags)\.tsv" ext="tabular" directory="stacks_outputs" /> 204 <discover_datasets pattern="(?P&lt;name&gt;.+\.tags)\.tsv$" ext="tabular" directory="stacks_outputs" />
202 </collection> 205 </collection>
203 206
204 <collection name="snps" type="list" label="Model calls from each locus on ${on_string}"> 207 <collection name="snps" type="list" label="Model calls from each locus on ${on_string}">
205 <discover_datasets pattern="(?P&lt;name&gt;.+\.snps)\.tsv" ext="tabular" directory="stacks_outputs" /> 208 <discover_datasets pattern="(?P&lt;name&gt;.+\.snps)\.tsv$" ext="tabular" directory="stacks_outputs" />
206 </collection> 209 </collection>
207 210
208 <collection name="alleles" type="list" label="Haplotypes/alleles recorded from each locus on ${on_string}"> 211 <collection name="alleles" type="list" label="Haplotypes/alleles recorded from each locus on ${on_string}">
209 <discover_datasets pattern="(?P&lt;name&gt;.+\.alleles)\.tsv" ext="tabular" directory="stacks_outputs" /> 212 <discover_datasets pattern="(?P&lt;name&gt;.+\.alleles)\.tsv$" ext="tabular" directory="stacks_outputs" />
210 </collection> 213 </collection>
211 214
212 <collection name="matches" type="list" label="Matches to the catalog on ${on_string}"> 215 <collection name="matches" type="list" label="Matches to the catalog on ${on_string}">
213 <discover_datasets pattern="(?P&lt;name&gt;.+\.matches)\.tsv" ext="tabular" directory="stacks_outputs" /> 216 <discover_datasets pattern="(?P&lt;name&gt;.+\.matches)\.tsv$" ext="tabular" directory="stacks_outputs" />
214 </collection> 217 </collection>
215 218
216 <collection name="all_output" type="list" label="Full output from denovo_map on ${on_string}"> 219 <collection name="all_output" type="list" label="Full output from denovo_map on ${on_string}">
217 <discover_datasets pattern="(?P&lt;name&gt;.+\.(tags|snps|alleles|matches))\.tsv" ext="tabular" directory="stacks_outputs" /> 220 <discover_datasets pattern="(?P&lt;name&gt;.+\.(tags|snps|alleles|matches))\.tsv$" ext="tabular" directory="stacks_outputs" />
218 <discover_datasets pattern="(?P&lt;name&gt;.+\.(haplotypes|genotypes|markers|hapstats|sumstats|sumstats_summary))\.tsv" ext="tabular" directory="stacks_outputs" /> 221 <discover_datasets pattern="(?P&lt;name&gt;.+\.(haplotypes|genotypes|markers|hapstats|sumstats|sumstats_summary))\.tsv$" ext="tabular" directory="stacks_outputs" />
219 <discover_datasets pattern="(?P&lt;name&gt;.+\.(genotypes))\.(loc|txt)" ext="txt" directory="stacks_outputs" /> 222 <discover_datasets pattern="(?P&lt;name&gt;.+\.(genotypes))\.(loc|txt)$" ext="txt" directory="stacks_outputs" />
220 </collection> 223 </collection>
221 </outputs> 224 </outputs>
222 225
223 <tests> 226 <tests>
227 <test>
228 <param name="options_usage|rad_analysis_type" value="genetic"/>
229 <param name="options_usage|parent_sequences" value="demultiplexed/PopA_01.1.fq" ftype="fastqsanger" />
230 <output name="output_log">
231 <assert_contents>
232 <has_text text="denovo_map.pl completed" />
233 </assert_contents>
234 </output>
235
236 <!-- catalog -->
237 <output name="catalogtags">
238 <assert_contents>
239 <has_text text="catalog generated on" />
240 </assert_contents>
241 </output>
242 <output name="catalogsnps">
243 <assert_contents>
244 <has_text text="catalog generated on" />
245 </assert_contents>
246 </output>
247 <output name="catalogalleles">
248 <assert_contents>
249 <has_text text="catalog generated on" />
250 </assert_contents>
251 </output>
252
253 <!-- genotypes -->
254 <output name="out_generic_haplo">
255 <assert_contents>
256 <has_text text="Catalog ID" />
257 </assert_contents>
258 </output>
259 <output name="out_sql_markers">
260 <assert_contents>
261 <has_text text="Total Genotypes" />
262 </assert_contents>
263 </output>
264 <output name="out_joinmap">
265 <assert_contents>
266 <has_text text="batch_1.genotypes_" />
267 </assert_contents>
268 </output>
269 <output name="out_sql_genotypes">
270 <assert_contents>
271 <has_text text="SQL ID" />
272 </assert_contents>
273 </output>
274
275 <!-- samples -->
276 <output_collection name="tags">
277 <element name="PopA_01.tags">
278 <assert_contents>
279 <has_text text="generated on " />
280 </assert_contents>
281 </element>
282 </output_collection>
283 <output_collection name="snps">
284 <element name="PopA_01.snps">
285 <assert_contents>
286 <has_text text="generated on " />
287 </assert_contents>
288 </element>
289 </output_collection>
290 <output_collection name="alleles">
291 <element name="PopA_01.alleles">
292 <assert_contents>
293 <has_text text="generated on " />
294 </assert_contents>
295 </element>
296 </output_collection>
297 <output_collection name="matches">
298 <element name="PopA_01.matches">
299 <assert_contents>
300 <has_text text="generated on " />
301 </assert_contents>
302 </element>
303 </output_collection>
304 </test>
305
224 <test> 306 <test>
225 <param name="options_usage|rad_analysis_type" value="genetic"/> 307 <param name="options_usage|rad_analysis_type" value="genetic"/>
226 <param name="options_usage|parent_sequences" value="demultiplexed/PopA_01.1.fq" ftype="fastqsanger" /> 308 <param name="options_usage|parent_sequences" value="demultiplexed/PopA_01.1.fq" ftype="fastqsanger" />
227 <param name="options_usage|progeny_sequences" value="demultiplexed/PopA_02.1.fq" ftype="fastqsanger" /> 309 <param name="options_usage|progeny_sequences" value="demultiplexed/PopA_02.1.fq" ftype="fastqsanger" />
228 <output name="output_log"> 310 <output name="output_log">
298 <has_text text="generated on " /> 380 <has_text text="generated on " />
299 </assert_contents> 381 </assert_contents>
300 </element> 382 </element>
301 </output_collection> 383 </output_collection>
302 </test> 384 </test>
385
303 <test> 386 <test>
304 <param name="options_usage|rad_analysis_type" value="population"/> 387 <param name="options_usage|rad_analysis_type" value="population"/>
305 <param name="options_usage|individual_sample" value="demultiplexed/PopA_01.1.fq,demultiplexed/PopA_02.1.fq,demultiplexed/PopA_03.1.fq,demultiplexed/PopA_04.1.fq,demultiplexed/PopB_01.1.fq,demultiplexed/PopB_02.1.fq,demultiplexed/PopB_03.1.fq,demultiplexed/PopB_04.1.fq" ftype="fastqsanger" /> 388 <param name="options_usage|individual_sample" value="demultiplexed/PopA_01.1.fq,demultiplexed/PopA_02.1.fq,demultiplexed/PopA_03.1.fq,demultiplexed/PopA_04.1.fq,demultiplexed/PopB_01.1.fq,demultiplexed/PopB_02.1.fq,demultiplexed/PopB_03.1.fq,demultiplexed/PopB_04.1.fq" ftype="fastqsanger" />
306 <param name="options_usage|popmap" value="denovo_map/popmap.tsv" /> 389 <param name="options_usage|popmap" value="denovo_map/popmap.tsv" />
307 <output name="output_log"> 390 <output name="output_log">