estrain@8
|
1 <tool id="seqsero2_v1_0_1" name="SeqSero 2" version="1.0.1">
|
estrain@8
|
2 <description>Salmonella serotype prediction</description>
|
estrain@8
|
3 <requirements>
|
estrain@8
|
4 <requirement type="package" version="3.6">python</requirement>
|
estrain@12
|
5 <requirement type="package" version="1.74">biopython</requirement>
|
estrain@8
|
6 <requirement type="package" version="2.7.1">blast</requirement>
|
estrain@8
|
7 <requirement type="package" version="1.9">samtools</requirement>
|
estrain@8
|
8 <requirement type="package" version="2.9.1">sra-tools</requirement>
|
estrain@8
|
9 <requirement type="package" version="0.7.17">bwa</requirement>
|
estrain@8
|
10 <requirement type="package" version="3.13.1">spades</requirement>
|
estrain@8
|
11 <requirement type="package" version="2.27.1">bedtools</requirement>
|
estrain@8
|
12 </requirements>
|
estrain@8
|
13 <command detect_errors="exit_code"><![CDATA[
|
estrain@8
|
14 echo "SeqSero 2 v. 1.0.1" ;
|
estrain@27
|
15 mkdir ./output;
|
estrain@27
|
16 cp $__tool_directory__/SalmID.py output/;
|
estrain@27
|
17 cp $__tool_directory__/invA_mers_dict output/;
|
estrain@30
|
18 cp $__tool_directory__/rpoB_mers_dict output/;
|
estrain@20
|
19
|
estrain@8
|
20 #if $reads.reads_select == 'history'
|
estrain@27
|
21 #set $name = $reads.forward.name.split('.')[0].replace(' ','_')
|
estrain@27
|
22 #set $forward = $reads.forward
|
estrain@27
|
23 #set $reverse = $reads.reverse
|
estrain@8
|
24 #else
|
estrain@27
|
25 #set $name = $reads.coll.name.replace(' ', '_')
|
estrain@27
|
26 #set $forward = $reads.coll.forward
|
estrain@27
|
27 #set $reverse = $reads.coll.reverse
|
estrain@8
|
28 #end if
|
estrain@27
|
29 echo $name ;
|
estrain@27
|
30 echo "-=-=-=-=-" ;
|
estrain@8
|
31 #if $forward.is_of_type('fastq.gz', 'fastqsanger.gz')
|
estrain@8
|
32 gunzip -c $forward > forward.fastq;
|
estrain@27
|
33 #set $forward = './forward.fastq'
|
estrain@8
|
34 #end if
|
estrain@8
|
35 #if $reverse.is_of_type('fastq.gz', 'fastqsanger.gz')
|
estrain@8
|
36 gunzip -c $reverse > reverse.fastq;
|
estrain@27
|
37 #set $reverse = './reverse.fastq'
|
estrain@8
|
38 #end if
|
estrain@27
|
39 ln -s $forward ${name}_1.fastq;
|
estrain@27
|
40 ln -s $reverse ${name}_2.fastq;
|
estrain@27
|
41 touch output/SeqSero_log.txt ;
|
estrain@27
|
42 python $__tool_directory__/SeqSero2_package.py
|
estrain@8
|
43 -p \${GALAXY_SLOTS:-4}
|
estrain@8
|
44 -t 2
|
estrain@8
|
45 -m $mode
|
estrain@8
|
46 -d ./output
|
estrain@8
|
47 #if $mode == 'a':
|
estrain@8
|
48 -b $maptype
|
estrain@8
|
49 #end if
|
estrain@8
|
50 -i ${name}_1.fastq ${name}_2.fastq &&
|
estrain@8
|
51 echo "-=-=-=-=-" &&
|
estrain@8
|
52 cat output/SeqSero_log.txt &&
|
estrain@8
|
53 echo "-=-=-=-=-" &&
|
estrain@8
|
54 ls -lah ./output
|
estrain@8
|
55 ]]></command>
|
estrain@8
|
56 <inputs>
|
estrain@8
|
57
|
estrain@8
|
58 <conditional name="reads">
|
estrain@8
|
59 <param name="reads_select" type="select" label="Paired-end collection, or two datasets from your history">
|
estrain@8
|
60 <option value="collection">Paired collection from your history</option>
|
estrain@8
|
61 <option value="history">Two FASTQ datasets from your history</option>
|
estrain@8
|
62 </param>
|
estrain@8
|
63 <when value="collection">
|
estrain@8
|
64 <param label="Paired reads" name="coll" type="data_collection" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz" collection_type="paired" />
|
estrain@8
|
65 </when>
|
estrain@8
|
66 <when value="history">
|
estrain@8
|
67 <param label="Forward reads" type="data" name="forward" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz" />
|
estrain@8
|
68 <param label="Reverse reads" type="data" name="reverse" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz" />
|
estrain@8
|
69 </when>
|
estrain@8
|
70 </conditional>
|
estrain@8
|
71
|
estrain@8
|
72 <!-- <param name="fastq1" type="data" format="fastq" label="FASTQ paired end read 1" />
|
estrain@8
|
73 <param name="fastq2" type="data" format="fastq" label="FASTQ paired end read 2" /> -->
|
estrain@8
|
74 <!-- <param name="numofthr" type="select" label="Number of threads">
|
estrain@8
|
75 <option value="1">1</option>
|
estrain@8
|
76 <option value="2">2</option>
|
estrain@8
|
77 <option value="3">3</option>
|
estrain@8
|
78 <option value="4">4</option> -->
|
estrain@8
|
79 <!-- </param> -->
|
estrain@8
|
80
|
estrain@8
|
81 <param label="Analysis mode" type="select" name="mode">
|
estrain@8
|
82 <option value="a">allele mode</option>
|
estrain@8
|
83 <option value="k">k-mer mode</option>
|
estrain@8
|
84 </param>
|
estrain@8
|
85
|
estrain@8
|
86 <param name="maptype" type="select" label="Algorithms for BWA mapping">
|
estrain@8
|
87 <option value="mem">mem</option>
|
estrain@8
|
88 <option value="sam">sam</option>
|
estrain@8
|
89 </param>
|
estrain@8
|
90
|
estrain@8
|
91
|
estrain@8
|
92
|
estrain@8
|
93 </inputs>
|
estrain@8
|
94 <outputs>
|
estrain@12
|
95 <data format="tabular" label="SeqSero Results" name="results" from_work_dir="output/SeqSero_result.txt"/>
|
estrain@8
|
96 </outputs>
|
estrain@8
|
97 <tests>
|
estrain@8
|
98 <!-- <test>
|
estrain@8
|
99 <param name="reads_select" value="history" />
|
estrain@8
|
100 <param name="forward" value="forward.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
101 <param name="reverse" value="reverse.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
102 <output name="results" file="Seqsero_result.tsv" />
|
estrain@8
|
103 </test>
|
estrain@8
|
104 <test>
|
estrain@8
|
105 <param name="reads_select" value="collection" />
|
estrain@8
|
106 <param name="coll">
|
estrain@8
|
107 <collection type="paired">
|
estrain@8
|
108 <element name="forward" value="forward.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
109 <element name="reverse" value="reverse.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
110 </collection>
|
estrain@8
|
111 </param>
|
estrain@8
|
112 <output name="results" file="Seqsero_result.tsv" />
|
estrain@8
|
113 </test> -->
|
estrain@8
|
114 <test>
|
estrain@8
|
115 <param name="mode" value="k" />
|
estrain@8
|
116 <param name="reads_select" value="history" />
|
estrain@8
|
117 <param name="forward" value="forward_25k.fastq.gz" ftype="fastqsanger" />
|
estrain@8
|
118 <param name="reverse" value="reverse_25k.fastq.gz" ftype="fastqsanger" />
|
estrain@8
|
119 <output name="results" file="Seqsero_result_25k.tsv" />
|
estrain@8
|
120 </test>
|
estrain@8
|
121 <test>
|
estrain@8
|
122 <param name="mode" value="k" />
|
estrain@8
|
123 <param name="reads_select" value="collection" />
|
estrain@8
|
124 <param name="coll">
|
estrain@8
|
125 <collection type="paired">
|
estrain@8
|
126 <element name="forward" value="forward_25k.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
127 <element name="reverse" value="reverse_25k.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
128 </collection>
|
estrain@8
|
129 </param>
|
estrain@8
|
130 <output name="results" file="Seqsero_result_25k_coll.tsv" />
|
estrain@8
|
131 </test>
|
estrain@8
|
132 <test>
|
estrain@8
|
133 <param name="mode" value="a" />
|
estrain@8
|
134 <param name="reads_select" value="history" />
|
estrain@8
|
135 <param name="forward" value="forward_250k.fastq.gz" ftype="fastqsanger" />
|
estrain@8
|
136 <param name="reverse" value="reverse_250k.fastq.gz" ftype="fastqsanger" />
|
estrain@8
|
137 <assert_stdout>
|
estrain@8
|
138 <has_text text="predicted antigenic profile does not exist" />
|
estrain@8
|
139 </assert_stdout>
|
estrain@8
|
140 </test>
|
estrain@8
|
141 <!-- <test>
|
estrain@8
|
142 <param name="mode" value="a" />
|
estrain@8
|
143 <param name="reads_select" value="collection" />
|
estrain@8
|
144 <param name="coll">
|
estrain@8
|
145 <collection type="paired">
|
estrain@8
|
146 <element name="forward" value="forward_25k.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
147 <element name="reverse" value="reverse_25k.fastq.gz" ftype="fastqsanger.gz" />
|
estrain@8
|
148 </collection>
|
estrain@8
|
149 </param>
|
estrain@8
|
150 <output name="results" file="Seqsero_result_allele.tsv" />
|
estrain@8
|
151 </test> -->
|
estrain@8
|
152 </tests>
|
estrain@8
|
153 <help><![CDATA[
|
estrain@8
|
154
|
estrain@8
|
155 **Usage: SeqSero2.py**
|
estrain@8
|
156
|
estrain@8
|
157 **Algorithms for BWA mapping**
|
estrain@8
|
158
|
estrain@8
|
159 'mem' for mem, 'sam' for samse/sampe; default=mem; optional; for now SeqSero2 is only optimized for "mem" mode
|
estrain@8
|
160
|
estrain@8
|
161 ]]></help>
|
estrain@8
|
162 <citations>
|
estrain@8
|
163 <citation type="bibtex">
|
estrain@8
|
164 @misc{zhang_yin_jones_zhang_deathrage_dinsmore_fitzgeral_fields_deng_2015,
|
estrain@8
|
165 title={Salmonella serotype determination utilizing high-throughput genome sequencing data.},
|
estrain@8
|
166 journal={J Clin Microbiol}, publisher={ASM},
|
estrain@8
|
167 author={Zhang S, Yin Y, Jones MB, Zhang Z, Deatherage Kaiser BL, Dinsmore BA, Fitzgerald C, Fields PI, Deng X.},
|
estrain@8
|
168 year={2015}, month={Max},
|
estrain@8
|
169 url={http://http://jcm.asm.org/content/early/2015/03/05/JCM.00323-15}},
|
estrain@8
|
170 }</citation>
|
estrain@8
|
171 <citation type="bibtex">
|
estrain@8
|
172 @misc{cfsan_biostatistics_group_2017,
|
estrain@8
|
173 title={CFSAN Biostatistics Group fork of SeqSero2},
|
estrain@8
|
174 url={https://github.com/CFSAN-Biostatistics/SeqSero2.git}},
|
estrain@8
|
175 </citation>
|
estrain@8
|
176 </citations>
|
estrain@8
|
177
|
estrain@8
|
178 </tool>
|