Mercurial > repos > iuc > pangolin
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}"> |