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