7
|
1 <tool id="delly" name="DELLY" version="0.6.1">
|
|
2
|
|
3 <description>structural variant discovery by integrated paired-end and split-read analysis</description>
|
|
4
|
|
5 <requirements>
|
|
6 <requirement type="package" version="0.6.1">delly</requirement>
|
|
7 <requirement type="set_environment">DELLY_DIR</requirement>
|
|
8 </requirements>
|
|
9
|
|
10
|
|
11 <command>
|
|
12
|
|
13 <!-- BAM and BAI linking, (1) link BAM to new BAM file & (2) link BAM metadata to new BAI file -->
|
|
14 #for $i, $s in enumerate( $repeatBam )
|
|
15 ln -s $s.sortedBam ./input$(i).bam;
|
|
16 ln -s $s.sortedBam.metadata.bam_index ./input$(i).bam.bai;
|
|
17 #end for
|
|
18
|
|
19 <!-- Sets args to a list of types selected -->
|
|
20 #if not isinstance( $type.value, list ):
|
|
21 #set $args = [ $type.value ]
|
|
22 #else:
|
|
23 #set $args = $type.value
|
|
24 #end if
|
|
25
|
|
26 <!-- Run Delly Jobs for each type selected -->
|
|
27 #for $option in $args
|
|
28 <!-- NEED TO FIX -->
|
|
29 <!-- Delly should be automatically installed into the galaxy instance and should not be running off
|
|
30 the computers specific tool set -->
|
|
31 \$DELLY_DIR/src/delly -t $option -o ./output.$(option).vcf -q $mapQual -s $madCutoff
|
|
32 #if $option == "DEL"
|
|
33 -m $minFlank
|
|
34 #end if
|
|
35 -u $genoQual -v $vcfgeno -g $genome
|
|
36
|
|
37 <!-- add each input bam to command -->
|
|
38 #for $i, $s in enumerate( $repeatBam )
|
|
39 ./input$(i).bam
|
|
40 #end for
|
|
41 ;
|
|
42 #end for
|
|
43
|
|
44 <!-- Combine VCF Files and Sort Lexographically -->
|
|
45 #set $option = $args[0]
|
|
46 grep ^\# output.$(option).vcf > $outfile;
|
|
47 grep ^\# -v output.$(option).vcf > variants.txt;
|
|
48
|
|
49 <!-- If we called more than a single variant type, concatenate all the other types variant output -->
|
|
50 #if isinstance( $type.value, list ):
|
|
51 #for $option in $args[1:]
|
|
52 grep ^\# -v output.$(option).vcf >> variants.txt;
|
|
53 #end for
|
|
54 #end if
|
|
55
|
|
56 <!-- Sort all variant output, assuming that it will sort lexographically by chromosome, then position, ID -->
|
|
57 <!-- In future, maybe develop a script to sort by bam header -->
|
|
58 sort -k1,1d -k2,2n -k3,3d variants.txt > sortedVariants.txt;
|
|
59
|
|
60 <!-- Filter Variants that have Passed Quality Checks -->
|
|
61 #if $filterCalls
|
|
62 awk '{if ($7 == "PASS") print $0;}' sortedVariants.txt >> $outfile;
|
|
63 #else
|
|
64 cat sortedVariants.txt >> $outfile;
|
|
65 #end if
|
|
66
|
|
67 </command>
|
|
68
|
|
69 <inputs>
|
|
70
|
|
71 <!-- General Options -->
|
|
72 <param name="type" type="select" multiple="true" display="checkboxes" label="Variant Types">
|
|
73 <option value="DEL" selected="true">Deletions</option>
|
|
74 <option value="DUP" selected="true">Tandem Duplications</option>
|
|
75 <option value="INV" selected="true">Inversions</option>
|
|
76 <option value="TRA" selected="true">Translocations</option>
|
|
77 </param>
|
|
78 <repeat name="repeatBam" title="Bam Alignment" min="1" default="1" >
|
|
79 <param format="bam" name="sortedBam" type="data" label="File" />
|
|
80 </repeat>
|
|
81 <param name="excludeFile" type="data" optional="true" label="Chromosomes to Exclude"/>
|
|
82 <param name="filterCalls" type="boolean" value="false" label="Filter Poor Variant Calls"/>
|
|
83
|
|
84 <!-- Paired End Options -->
|
|
85 <param name="mapQual" type="integer" value="0" min="0" max="255" label="PE - Minimum Mapping Quality" />
|
|
86 <param name="madCutoff" type="integer" value="9" min="0" max="255" label="PE - Insert Size Cutoff" />
|
|
87
|
|
88 <!-- SR Options -->
|
|
89 <param format="fasta" name="genome" type="data" optional="true" label="SR - Genome Fasta File" />
|
|
90 <param name="minFlank" type="integer" value="13" label="SR - Minimum Flanking Sequence" />
|
|
91
|
|
92 <!-- Genotyping Options -->
|
|
93 <param format="vcf" name="vcfgeno" type="data" optional="true" label="GT - Input VCF" />
|
|
94 <param name="genoQual" type="integer" value="20" min="0" max="255" label="GT - Minimum Mapping Quality" />
|
|
95
|
|
96 </inputs>
|
|
97
|
|
98 <outputs>
|
|
99 <data format="vcf" name="outfile" />
|
|
100 </outputs>
|
|
101
|
|
102 <help>
|
|
103
|
|
104 </help>
|
|
105
|
|
106 </tool>
|