Mercurial > repos > tduigou > icfree_instructor
comparison instructor.xml @ 0:f93749376fe5 draft
planemo upload for repository https://github.com/brsynth/icfree-ml commit e908694368c306390bc9253f81a9249ad988970d
author | tduigou |
---|---|
date | Tue, 28 Mar 2023 12:35:26 +0000 |
parents | |
children | a4022782b0fc |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f93749376fe5 |
---|---|
1 <tool id="icfree_instructor" name="iCFree instructor" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" license="@LICENCE@"> | |
2 <description>Generates a list of Echo-compatible instructions to prepare samples</description> | |
3 <macros> | |
4 <import>macros.xml</import> | |
5 </macros> | |
6 <expand macro="requirements"/> | |
7 <expand macro="stdio"/> | |
8 <command detect_errors="exit_code"><![CDATA[ | |
9 #set sps = [] | |
10 #set sws = [] | |
11 #set dps = [] | |
12 #set dws = [] | |
13 #for $x in $plates_generator: | |
14 #set $fname = str($x.element_identifier) | |
15 echo "$fname " && | |
16 ln -sfn '$x' '$fname' && | |
17 #if $fname.startswith('source') and $fname.endswith('json'): | |
18 #silent sps.append($fname) | |
19 #else if $fname.startswith('source') and $fname.endswith('tsv'): | |
20 #silent sws.append($fname) | |
21 #else if $fname.startswith('destination') and $fname.endswith('json'): | |
22 #silent dps.append($fname) | |
23 #else if $fname.startswith('destination') and $fname.endswith('tsv'): | |
24 #silent dws.append($fname) | |
25 #end if | |
26 #end for | |
27 #set s_sps = '" "'.join($sps) | |
28 #set s_sws = '" "'.join($sws) | |
29 #set s_dps = '" "'.join($dps) | |
30 #set s_dws = '" "'.join($dws) | |
31 python -m icfree.instructor | |
32 --source_plates $s_sps | |
33 --source_wells $s_sws | |
34 --dest_plates $s_dps | |
35 --dest_wells $s_dws | |
36 -spt '$source_plate' | |
37 --robot '$robot' | |
38 --output-folder '.' && | |
39 mv instructions.csv '$output_instruction' && | |
40 #if not os.path.isfile('volume_warning.tsv') | |
41 touch volume_warning.tsv && | |
42 #end if | |
43 mv volume_warning.tsv '$output_warning' | |
44 ]]></command> | |
45 <inputs> | |
46 <param name="plates_generator" type="data_collection" collection_type="list" format="json,tabular" label="Source/Destination corresponding to plate/wells" help="Output from iCFree plates generator"/> | |
47 <param name="robot" type="select" label="Robot name"> | |
48 <option value="ECHO" selected="true">ECHO</option> | |
49 </param> | |
50 <param name="source_plate" type="select" label="Source plate type"> | |
51 <option value="384PP_AQ_GP3" selected="true">384PP_AQ_GP3</option> | |
52 <option value="384_AQ_CP">384_AQ_CP</option> | |
53 </param> | |
54 </inputs> | |
55 <outputs> | |
56 <data name="output_warning" format="tsv" label="${tool.name} - Warning" /> | |
57 <data name="output_instruction" format="csv" label="${tool.name} - Instruction" /> | |
58 </outputs> | |
59 <tests> | |
60 <test> | |
61 <!-- test 1: check if identical outputs are produced with default parameters --> | |
62 <param name="plates_generator"> | |
63 <collection type="list"> | |
64 <element name="plates_generator_source_plate_1" value="plates_generator_source_plate_1.test-1.json" /> | |
65 <element name="plates_generator_source_plate_1.test-1.tsv" value="plates_generator_source_plate_1.test-1.tsv" /> | |
66 <element name="plates_generator_destination_plate_1.test-1.json" value="plates_generator_destination_plate_1.test-1.json" /> | |
67 <element name="plates_generator_destination_plate_1.test-1.tsv" value="plates_generator_destination_plate_1.test-1.tsv" /> | |
68 </collection> | |
69 </param> | |
70 <output name="output_warning" ftype="tabular"> | |
71 <assert_contents> | |
72 <has_n_lines n="12"/> | |
73 <has_line_matching expression="^Parameter\tMin\tMax\tPlate$"/> | |
74 </assert_contents> | |
75 </output> | |
76 <output name="output_instruction" file="instructor_instructions.csv" ftype="csv" compare="diff" /> | |
77 </test> | |
78 </tests> | |
79 <help><![CDATA[ | |
80 Instructor | |
81 ========== | |
82 | |
83 The module generates a list of instructions to perform the experiment. | |
84 | |
85 Input | |
86 ----- | |
87 Required: | |
88 * **A collection**: a collection with source/destination plates/wells, coming from iCFree plates generator tool. | |
89 | |
90 Advanced options: | |
91 ----------------- | |
92 * **Robot name**: name of the robot to generate instructions for (default: "ECHO") | |
93 * **Source plate type**: type of plate used (default: "384PP_AQ_GP3") | |
94 | |
95 Output | |
96 ------ | |
97 * **instructions**: contains the instructions to perform the experiment | |
98 * **volumes_warning**: contains the volumes that may cause issues with the chosen robot | |
99 ]]></help> | |
100 <expand macro="creator"/> | |
101 <expand macro="citation"/> | |
102 </tool> |