comparison pangolin.xml @ 20:14ae456b8cc5 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 21834c24b94f942ed759bd7a2fcf0b3b4b5fd839"
author iuc
date Tue, 03 May 2022 19:27:06 +0000
parents abf6dbe8c9d7
children 81804a978fc0
comparison
equal deleted inserted replaced
19:abf6dbe8c9d7 20:14ae456b8cc5
1 <tool id="pangolin" name="Pangolin" version="@TOOL_VERSION@+galaxy0" profile="20.01"> 1 <tool id="pangolin" name="Pangolin" version="@TOOL_VERSION@+galaxy1" profile="20.01">
2 <description>Phylogenetic Assignment of Outbreak Lineages</description> 2 <description>Phylogenetic Assignment of Outbreak Lineages</description>
3 <macros> 3 <macros>
4 <token name="@TOOL_VERSION@">4.0.5</token> 4 <token name="@TOOL_VERSION@">4.0.5</token>
5 </macros> 5 </macros>
6 <requirements> 6 <requirements>
8 <requirement type="package" version="0.3.16">scorpio</requirement> 8 <requirement type="package" version="0.3.16">scorpio</requirement>
9 <requirement type="package" version="0.23.0">csvtk</requirement> 9 <requirement type="package" version="0.23.0">csvtk</requirement>
10 </requirements> 10 </requirements>
11 <version_command><![CDATA[pangolin --version]]></version_command> 11 <version_command><![CDATA[pangolin --version]]></version_command>
12 <command detect_errors="exit_code"><![CDATA[ 12 <command detect_errors="exit_code"><![CDATA[
13 #if $engine.use_assignment_cache and str($db.source) != "download":
14 ## This is no good. Better to fail immediately instead of downloading a lot of data first.
15 echo "Using the latest assignment cache requires downloading the latest version of pangolin-data." 1>&2; exit 1
16 #else:
17 ## Sanity chceck was ok, lets do the real thing ...
13 #if str($db.source) == "download" 18 #if str($db.source) == "download"
14 ## Pangolin version 4 tries to update from an existing directory 19 ## Pangolin version 4 tries to update from an existing directory
15 mkdir datadir && 20 mkdir datadir &&
16 pangolin --update-data --datadir datadir && 21 pangolin --update-data --datadir datadir &&
17 #else if str($db.source) == "builtin" 22 #else if str($db.source) == "builtin"
18 ln -s $db.db_release.fields.path datadir && 23 ln -s $db.db_release.fields.path datadir &&
19 #end if 24 #end if
25 #if $engine.use_assignment_cache:
26 ## We need to install also the latest UShER assignment cache data.
27 ## Pangolin has functionality to do so, but uses it incorrectly.
28 ## We use the pangolin function to install into --datadir here,
29 ## then point pangolin to the downloaded file later using
30 ## its --assignment-cache parameter
31
32 ## Create a "honeypot" package that will be picked up by pangolin,
33 ## but will trigger a download because of missing __version__ info.
34 mkdir pangolin_assignment &&
35 touch pangolin_assignment/__init__.py &&
36 ## Call pangolin's assignment cache install function, but
37 ## override pip's install path
38 PIP_TARGET="datadir" PIP_UPGRADE=1 python -c "from pangolin.utils import update; update.install_pangolin_assignment()" &&
39 #end if
20 pangolin 40 pangolin
21 --threads \${GALAXY_SLOTS:-1} 41 --threads \${GALAXY_SLOTS:-1}
22 --tempdir "\${TMPDIR:-.}" 42 --tempdir "\${TMPDIR:-.}"
23 #if str($db.source) == "download" or str($db.source) == "builtin" 43 #if str($db.source) == "download" or str($db.source) == "builtin"
24 --datadir datadir 44 --datadir datadir
25 #end if 45 #end if
26 --analysis-mode $engine.analysis_mode 46 --analysis-mode $engine.analysis_mode
27 #if str($engine.analysis_mode) == 'usher': 47 #if str($engine.analysis_mode) == 'usher':
28 $engine.use_assignment_cache 48 $engine.use_assignment_cache
49 #if $engine.use_assignment_cache:
50 ## Point pangolin to the assignment cache file we've downloaded before
51 --assignment-cache datadir/pangolin_assignment/usher_assignments.cache.csv.gz
52 #end if
29 #end if 53 #end if
30 #if $alignment: 54 #if $alignment:
31 $alignment --alignment-file '$align1' 55 $alignment --alignment-file '$align1'
32 #end if 56 #end if
33 --outfile report.csv 57 --outfile report.csv
34 --max-ambig $max_ambig 58 --max-ambig $max_ambig
35 --min-length $min_length 59 --min-length $min_length
36 $expanded_lineage 60 $expanded_lineage
37 '$input1' 61 '$input1'
38 && csvtk csv2tab report.csv 62 && csvtk csv2tab report.csv
39 #if not $include_header: 63 #if not $include_header:
40 | tail -n+2 64 | tail -n+2
41 #end if 65 #end if
42 > '$output1' 66 > '$output1'
67 #end if
43 ]]></command> 68 ]]></command>
44 <inputs> 69 <inputs>
45 <param type="data" name="input1" format="fasta" label="Input FASTA File(s)" /> 70 <param type="data" name="input1" format="fasta" label="Input FASTA File(s)" />
46 <conditional name="engine"> 71 <conditional name="engine">
47 <param argument="--analysis-mode" type="select" label="Analysis mode" 72 <param argument="--analysis-mode" type="select" label="Analysis mode"
48 help="The analysis engine to use for lineage assignment. UShER is considered more accurate, but pangoLEARN is faster"> 73 help="The analysis engine to use for lineage assignment. UShER is considered more accurate, but pangoLEARN is faster">
49 <option value="usher">UShER</option> 74 <option value="usher">UShER</option>
50 <option value="pangolearn">pangoLEARN</option> 75 <option value="pangolearn">pangoLEARN</option>
51 </param> 76 </param>
52 <when value="usher"> 77 <when value="usher">
53 <param argument="--use-assignment-cache" type="boolean" truevalue="--add-assignment-cache --use-assignment-cache" falsevalue="" label="Use latest UShER assignment cache" 78 <param argument="--use-assignment-cache" type="boolean" truevalue="--use-assignment-cache" falsevalue="" label="Use latest UShER assignment cache"
54 help="Get the latest UShER assignment cache from the pangolin-assignment online repository and use it to speed up UShER lineage assignment. Note: Downloading the cached assignments will only pay off for large numbers of input samples. Also note that using the latest assignment cache in combination with the built-in or a cached pangolin-data source (see option below), will make your otherwise reproducible results dependent on an external data source." /> 79 help="Get the latest UShER assignment cache from the pangolin-assignment online repository and use it to speed up UShER lineage assignment. Note: Downloading the cached assignments will only pay off for large numbers of input samples. Also note that using the latest assignment cache will require you to select the 'Download latest from web' option for the pangolin-data source below because assignment cache and pangolin-data need to be synchronized." />
55 </when> 80 </when>
56 <when value="pangolearn" /> 81 <when value="pangolearn" />
57 </conditional> 82 </conditional>
58 <conditional name="db"> 83 <conditional name="db">
59 <param type="select" name="source" label="pangolin-data source" help="Where to find the pangolin-data to use for the tool run. While 'Download latest from web' is recommended, if errors occur see the warning in the main help text below."> 84 <param type="select" name="source" label="pangolin-data source" help="Where to find the pangolin-data to use for the tool run. While 'Download latest from web' is recommended, if errors occur see the warning in the main help text below.">
80 </when> 105 </when>
81 <when value="default" /> 106 <when value="default" />
82 </conditional> 107 </conditional>
83 <param argument="--alignment" type="boolean" truevalue="--alignment" falsevalue="" label="Output multiple sequence alignment of input sequences" /> 108 <param argument="--alignment" type="boolean" truevalue="--alignment" falsevalue="" label="Output multiple sequence alignment of input sequences" />
84 <param argument="--max-ambig" type="float" value="0.3" min="0" max="1" label="Maximum proportion of Ns allowed" help="Maximum proportion of Ns allowed for pangolin to attempt assignment" /> 109 <param argument="--max-ambig" type="float" value="0.3" min="0" max="1" label="Maximum proportion of Ns allowed" help="Maximum proportion of Ns allowed for pangolin to attempt assignment" />
85 <param argument="--min-length" type="integer" value="25000" min="0" max="29903" label="Minimum query length allowed" help="Minimum query length allowed for pangolin to attempt assignment. Please note that in the current implementation this parameter is used to calculate an alternate value for the 'Maximum proportion of Ns allowed' parameter as 1-(minlen/reflen). The smaller of the two will be used." /> 110 <param argument="--min-length" type="integer" value="0" min="0" max="29903" label="Minimum query length allowed" help="Minimum query length allowed for pangolin to attempt assignment. Please note that in the current implementation this parameter is used to calculate an alternate value for the 'Maximum proportion of Ns allowed' parameter as 1-(minlen/reflen). The smaller of the two will be used." />
86 <param argument="--expanded-lineage" type="boolean" truevalue="--expanded-lineage" falsevalue="" label="Add expanded lineage column to output" help="Optional expanded lineage information as defined in the alias.json file in pangolin-data can be appended as an additional column to the output." /> 111 <param argument="--expanded-lineage" type="boolean" truevalue="--expanded-lineage" falsevalue="" label="Add expanded lineage column to output" help="Optional expanded lineage information as defined in the alias.json file in pangolin-data can be appended as an additional column to the output." />
87 <param name="include_header" type="boolean" truevalue="true" falsevalue="false" label="Include header line in output file" /> 112 <param name="include_header" type="boolean" truevalue="true" falsevalue="false" label="Include header line in output file" />
88 </inputs> 113 </inputs>
89 <outputs> 114 <outputs>
90 <data name="output1" format="tabular" label="pangolin on ${on_string}"> 115 <data name="output1" format="tabular" label="pangolin on ${on_string}">