2
|
1 <tool id="PanExplorer2" name="PanExplorer2" version="2.0">
|
|
2 <description> Bacterial pan-genome analysis </description>
|
|
3 <requirements>
|
|
4 <!--
|
|
5 <requirement type="package" version="2.2.26">blast-legacy</requirement>
|
|
6 <requirement type="package" version="7.480">mafft</requirement>
|
|
7 <requirement type="package" version="14.137">mcl</requirement>
|
|
8 <requirement type="package" version="3.697">phylip</requirement>
|
|
9 <requirement type="package" version="1.7.2">perl-bioperl</requirement>
|
|
10 -->
|
7
|
11 <requirement type="package" version="1.30">perl-yaml</requirement>
|
|
12 <requirement type="package" version="3.8.7">singularity</requirement>
|
2
|
13
|
|
14 </requirements>
|
|
15
|
|
16 <command><![CDATA[
|
7
|
17
|
2
|
18 export PANEX_PATH=${__tool_directory__};
|
|
19
|
|
20 perl ${__tool_directory__}/Perl/generateConfig.pl '$private_genomes' '$input' config.yaml '$private_genomes_fasta';
|
|
21
|
|
22 cat config.yaml >$logfile;
|
|
23
|
8
|
24 wget -O \$PANEX_PATH/panexplorer.sif https://panexplorer.southgreen.fr/singularity/panexplorer.sif >>$logfile 2>&1;
|
2
|
25
|
|
26
|
|
27
|
|
28 #if $software=="pgap"
|
|
29 sed "s/identity\=80/identity\=$min_identity/g" \$PANEX_PATH/Snakemake_files/Snakefile_wget_PGAP_heatmap_upset_COG >snakefile;
|
|
30 #else if $software=="roary"
|
|
31 sed "s/identity\=80/identity\=$min_identity/g" \$PANEX_PATH/Snakemake_files/Snakefile_wget_roary_heatmap_upset_COG >snakefile;
|
|
32 #else if $software=="orthofinder"
|
|
33 sed "s/identity\=80/identity\=$min_identity/g" \$PANEX_PATH/Snakemake_files/Snakefile_orthofinder_heatmap_upset >snakefile;
|
|
34 #else if $software=="cactus"
|
|
35 cp -rf \$PANEX_PATH/Snakemake_files/Snakefile_wget_cactus_heatmap_upset_COG2 snakefile;
|
|
36 #else if $software=="pggb"
|
|
37 sed "s/identity\=30/identity\=$min_identity/g" \$PANEX_PATH/Snakemake_files/Snakefile_wget_pggb_heatmap_upset_COG >snakefile;
|
|
38 #else
|
|
39 sed "s/identity\=80/identity\=$min_identity/g" \$PANEX_PATH/Snakemake_files/Snakefile_wget_panacota_heatmap_upset_COG >snakefile;
|
|
40 #end if
|
|
41
|
|
42 singularity exec \$PANEX_PATH/panexplorer.sif snakemake --cores 1 -s snakefile >>$logfile 2>&1;
|
|
43
|
|
44
|
|
45 cp -rf outputs/upsetr.svg $upset;
|
|
46 cp -rf outputs/pav_matrix.tsv $output;
|
|
47 cp -rf outputs/heatmap.svg.gz $heatmap;
|
|
48 cp -rf outputs/heatmap.svg.heatmap_plotly.html $heatmap_html;
|
|
49 cp -rf outputs/rarefaction_curves.txt $rarefaction_curves;
|
|
50 cp -rf outputs/rarefaction_curves.svg $rarefaction_curves_svg;
|
|
51 cp -rf outputs/heaps.tsv $heaps;
|
|
52 cp -rf outputs/heatmap.svg.complete.pdf.distance_matrix.txt $distance_matrix;
|
|
53 cp -rf outputs/heatmap.svg.complete.pdf.distance_matrix.hclust.newick $njtree;
|
|
54
|
|
55 #if $software!="orthofinder"
|
|
56 cp -rf outputs/GCskew.txt $gcfile;
|
|
57 cp -rf outputs/cog_output.txt $cogfile;
|
|
58 cp -rf outputs/cog_stats.txt $outcog_stat;
|
|
59 cp -rf outputs/cog_stats2.txt $outcog_stat2;
|
|
60 cp -rf outputs/cog_of_clusters.txt $outcog_clusters;
|
|
61 cp -rf outputs/genomes/genes.txt $genes;
|
|
62 cp -rf outputs/fastani.out.matrix.complete $fastani;
|
|
63 cp -rf outputs/fastani.out.svg $ani_svg;
|
|
64 #end if
|
|
65
|
|
66 #if $software=="pggb"
|
|
67 cp -rf outputs/all_genomes.vcf $vcf;
|
|
68 #else
|
|
69 touch $vcf;
|
|
70 #end if
|
|
71 ]]></command>
|
|
72
|
|
73
|
|
74 <inputs>
|
|
75 <param name="input" type="text" multiple="true" label="List of genbank identifiers" help="Coma separated list (ex: CP000235.1,CP001079.1,CP001759.1,CP015994.2)"/>
|
|
76 <param name="private_genomes" type="data" format="zip" label="Zip of genbank or GFF files" optional="true"/>
|
|
77 <param name="private_genomes_fasta" type="data" format="zip" label="Zip of Fasta files" optional="true"/>
|
|
78 <param name="min_identity" type="text" value="80" label="Minimum percentage identity for BlastP" />
|
|
79 <param type="select" name="software" label="Choose the pan-genome software">
|
|
80 <option value="pgap">PGAP</option>
|
|
81 <option value="roary">Roary</option>
|
|
82 <option value="panacota">PanACoTA</option>
|
|
83 <option value="orthofinder">OrthoFinder</option>
|
|
84 <option value="cactus">Minigraph-Cactus</option>
|
|
85 <option value="pggb">PanGenome Graph Builder (PGGB)</option>
|
|
86 </param>
|
|
87 </inputs>
|
|
88
|
|
89 <outputs>
|
|
90 <data format="txt" name="output" label="Pangenome presence absence matrix"/>
|
|
91 <data format="newick" name="njtree" label="PanBased NJ tree"/>
|
|
92 <data format="txt" name="genes" label="Genes"/>
|
|
93 <data format="txt" name="cogfile" label="COG assignation"/>
|
|
94 <data format="txt" name="gcfile" label="GC_percent"/>
|
|
95 <data format="svg" name="upset" label="Upset Diagram"/>
|
|
96 <data format="svg" name="heatmap" label="Presence Absence Heatmap"/>
|
|
97 <data format="html" name="heatmap_html" label="Presence Absence Heatmap interactive"/>
|
|
98 <data format="tabular" name="outcog_stat" label="COG category counts"/>
|
|
99 <data format="tabular" name="outcog_stat2" label="COG category 2 counts"/>
|
|
100 <data format="tabular" name="outcog_clusters" label="COG of clusters"/>
|
|
101 <data format="tabular" name="fastani" label="ANI" />
|
|
102 <data format="svg" name="ani_svg" label="ANI heatmap" />
|
|
103 <data format="txt" name="rarefaction_curves" label="Rarefaction curves data"/>
|
|
104 <data format="svg" name="rarefaction_curves_svg" label="Rarefaction curves"/>
|
|
105 <data format="txt" name="heaps" label="Heaps law alpha"/>
|
|
106 <data format="txt" name="distance_matrix" label="Accessory based distance matrix"/>
|
|
107 <data format="vcf" name="vcf" label="VCF file"/>
|
|
108 <data format="txt" name="logfile" label="Logfile"/>
|
|
109 <data format="txt" name="roary_log" label="Roary Logfile"/>
|
|
110 </outputs>
|
|
111
|
|
112 </tool>
|