Mercurial > repos > iuc > ena_upload
comparison ena_upload.xml @ 10:480d9e9d156b draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ena_upload commit dccd4c0668ec8ce1b1c8fd9cef4dcf3a99dc78b3
author | iuc |
---|---|
date | Fri, 27 Oct 2023 19:44:40 +0000 |
parents | a62c4a11a67d |
children | f803a68fc9e5 |
comparison
equal
deleted
inserted
replaced
9:a62c4a11a67d | 10:480d9e9d156b |
---|---|
1 <tool id="ena_upload" name="ENA Upload tool" version="@VERSION@" profile="20.01" license="MIT"> | 1 <tool id="ena_upload" name="ENA Upload tool" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05" license="MIT"> |
2 <macros> | 2 <macros> |
3 <token name="@VERSION@">0.6.1</token> | 3 <token name="@TOOL_VERSION@">0.6.3</token> |
4 <token name="@VERSION_SUFFIX@">0</token> | |
4 <import>samples_macros.xml</import> | 5 <import>samples_macros.xml</import> |
5 </macros> | 6 </macros> |
6 <requirements> | 7 <requirements> |
7 <requirement type="package" version="@VERSION@">ena-upload-cli</requirement> | 8 <requirement type="package" version="@TOOL_VERSION@">ena-upload-cli</requirement> |
8 </requirements> | 9 </requirements> |
9 <stdio> | 10 <stdio> |
10 <regex match="Oops" source="stderr" level="fatal"/> | 11 <regex match="Oops" source="stderr" level="fatal"/> |
11 <regex match="different file names between command line and RUN table" source="stderr" level="fatal"/> | 12 <regex match="different file names between command line and RUN table" source="stderr" level="fatal"/> |
12 </stdio> | 13 </stdio> |
45 ln -s '$action_options.input_format_conditional.samples_users_table' $samples_table_path && | 46 ln -s '$action_options.input_format_conditional.samples_users_table' $samples_table_path && |
46 #end if | 47 #end if |
47 #if $action_options.input_format_conditional.input_format == "excel_tables": | 48 #if $action_options.input_format_conditional.input_format == "excel_tables": |
48 ln -s '$action_options.input_format_conditional.xlsx_file' ./xlsx_input.xlsx && | 49 ln -s '$action_options.input_format_conditional.xlsx_file' ./xlsx_input.xlsx && |
49 #end if | 50 #end if |
50 #if $action_options.test_submit_parameters.dry_run == "false" and $action_options.test_submit == "False": | 51 #if $action_options.test_submit_parameters.dry_run == "False" and $action_options.test_submit == "False": |
51 webin_id=`grep 'username' $credentials`; | 52 webin_id=`grep 'username' $credentials`; |
52 if [ "\$webin_id" = "" ]; then | 53 if [ "\$webin_id" = "" ]; then |
53 ## No credentials in user defined preferences | 54 ## No credentials in user defined preferences |
54 ## Fallback to global defined credentials (if exist) | 55 ## Fallback to global defined credentials (if exist) |
55 #import os | 56 #import os |
56 #if os.path.isfile(os.environ.get('GALAXY_ENA_SECRETS', '')): | 57 #if os.path.isfile(os.environ.get('GALAXY_ENA_SECRETS', '')): |
57 credentials_path=\${GALAXY_ENA_SECRETS}; | 58 credentials_path=\${GALAXY_ENA_SECRETS}; |
58 webin_id=`grep 'username' \$GALAXY_ENA_SECRETS`; | 59 webin_id=`grep 'username' \$GALAXY_ENA_SECRETS`; |
59 if [ "\$webin_id" = "" ]; then | 60 if [ "\$webin_id" = "" ]; then |
60 echo "No global credentials defined. Check your GALAXY_ENA_SECRETS file or set your credentials via: User -> Preferences -> Manage Information"; | 61 echo "No global credentials defined. Check your GALAXY_ENA_SECRETS file or set your credentials via: User -> Preferences -> Manage Information"; |
61 exit 1; | 62 exit 1; |
62 fi; | 63 fi; |
63 #else: | 64 #else: |
64 echo "No ENA credentials defined. Set your credentials via: User -> Preferences -> Manage Information"; | 65 echo "No ENA credentials defined. Set your credentials via: User -> Preferences -> Manage Information"; |
65 exit 1; | 66 exit 1; |
78 #for $sample in $study.rep_sample: | 79 #for $sample in $study.rep_sample: |
79 #for $experiment in $sample.rep_experiment: | 80 #for $experiment in $sample.rep_experiment: |
80 #for $run in $experiment.rep_runs: | 81 #for $run in $experiment.rep_runs: |
81 #for $file in $run.upload_files: | 82 #for $file in $run.upload_files: |
82 #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier) | 83 #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier) |
83 #if $action_options.input_format_conditional.add_extension == "true": | 84 #if $action_options.input_format_conditional.add_extension == "True": |
84 #set $extension = '.fastq' | 85 #set $extension = '.fastq' |
85 #else | 86 #else |
86 #set $extension = '' | 87 #set $extension = '' |
87 #end if | 88 #end if |
88 #if $file.is_of_type('fastq', 'fastqsanger'): | 89 #if $file.is_of_type('fastq', 'fastqsanger'): |
89 ## compression output is defined as safename_reads_file so no need to symlink | 90 ## compression output is defined as safename_reads_file so no need to symlink |
90 #set $safename_reads_file = $safename_reads_file + $extension + '.gz' | 91 #set $safename_reads_file = $safename_reads_file + $extension + '.gz' |
91 gzip -c '$file' > $safename_reads_file && | 92 gzip -c '$file' > $safename_reads_file && |
92 #else: | 93 #else: |
93 #if $action_options.input_format_conditional.add_extension == "true": | 94 #if $action_options.input_format_conditional.add_extension == "True": |
94 #if $file.is_of_type('fastq.gz', 'fastqsanger.gz'): | 95 #if $file.is_of_type('fastq.gz', 'fastqsanger.gz'): |
95 #set $compression = '.gz' | 96 #set $compression = '.gz' |
96 #elif $file.is_of_type('fastqsanger.bz2', 'fastq.bz2'): | 97 #elif $file.is_of_type('fastqsanger.bz2', 'fastq.bz2'): |
97 #set $compression = '.bz2' | 98 #set $compression = '.bz2' |
98 #end if | 99 #end if |
146 #if $action_options.input_format_conditional.run_input_format_conditional.run_input_format == 'multiple_selection_list': | 147 #if $action_options.input_format_conditional.run_input_format_conditional.run_input_format == 'multiple_selection_list': |
147 #for $file in $action_options.input_format_conditional.run_input_format_conditional.data: | 148 #for $file in $action_options.input_format_conditional.run_input_format_conditional.data: |
148 #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier) | 149 #set $safename_reads_file = re.sub('[^\w\-_\.]', '_', $file.element_identifier) |
149 #if $file.is_of_type('fastq', 'fastqsanger'): | 150 #if $file.is_of_type('fastq', 'fastqsanger'): |
150 ## always compress add the gz extension | 151 ## always compress add the gz extension |
151 #if $action_options.input_format_conditional.run_input_format_conditional.add_extension == "true": | 152 #if $action_options.input_format_conditional.run_input_format_conditional.add_extension == "True": |
152 #set $safename_reads_file = $safename_reads_file + '.fastq.gz' | 153 #set $safename_reads_file = $safename_reads_file + '.fastq.gz' |
153 #else | 154 #else |
154 #set $safename_reads_file = $safename_reads_file + '.gz' | 155 #set $safename_reads_file = $safename_reads_file + '.gz' |
155 #end if | 156 #end if |
156 gzip -c '$file' > $safename_reads_file && | 157 gzip -c '$file' > $safename_reads_file && |
157 #else | 158 #else |
158 #if $action_options.input_format_conditional.run_input_format_conditional.add_extension == "true": | 159 #if $action_options.input_format_conditional.run_input_format_conditional.add_extension == "True": |
159 #if $file.is_of_type('fastq.gz', 'fastqsanger.gz'): | 160 #if $file.is_of_type('fastq.gz', 'fastqsanger.gz'): |
160 #set $extension = '.fastq.gz' | 161 #set $extension = '.fastq.gz' |
161 #elif $file.is_of_type('fastqsanger.bz2', 'fastq.bz2'): | 162 #elif $file.is_of_type('fastqsanger.bz2', 'fastq.bz2'): |
162 #set $extension = '.fastq.bz2' | 163 #set $extension = '.fastq.bz2' |
163 #end if | 164 #end if |
170 #end if | 171 #end if |
171 #end if | 172 #end if |
172 | 173 |
173 #if $action_options.action == "add": | 174 #if $action_options.action == "add": |
174 ena-upload-cli | 175 ena-upload-cli |
175 --tool 'ena-upload-cli v@VERSION@ @ Galaxy' | 176 --tool 'ena-upload-cli v@TOOL_VERSION@ @ Galaxy' |
176 --action '$action_options.action' | 177 --action '$action_options.action' |
177 --center '$action_options.center' | 178 --center '$action_options.center' |
178 --secret \${credentials_path} | 179 --secret \${credentials_path} |
179 --data | 180 --data |
180 #for $dataset in $files_to_upload: | 181 #for $dataset in $files_to_upload: |
181 '$dataset' | 182 '$dataset' |
182 #end for | 183 #end for |
183 #if $action_options.test_submit_parameters.dry_run == "true": | 184 #if $action_options.test_submit_parameters.dry_run == "True": |
184 --draft | 185 --draft |
185 #end if | 186 #end if |
186 #if $action_options.input_format_conditional.input_format != "excel_tables": | 187 #if $action_options.input_format_conditional.input_format != "excel_tables": |
187 --experiment '$experiments_table_path' | 188 --experiment '$experiments_table_path' |
188 --study '$studies_table_path' | 189 --study '$studies_table_path' |
194 --action add | 195 --action add |
195 #if $action_options.input_format_conditional.input_format == "user_generated_tables": | 196 #if $action_options.input_format_conditional.input_format == "user_generated_tables": |
196 --checklist $action_options.input_format_conditional.checklist_id | 197 --checklist $action_options.input_format_conditional.checklist_id |
197 #else: | 198 #else: |
198 #if $action_options.input_format_conditional.input_format == "build_tables": | 199 #if $action_options.input_format_conditional.input_format == "build_tables": |
199 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "true": | 200 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "True": |
200 --checklist ERC000033 | 201 --checklist ERC000033 |
201 #end if | 202 #end if |
202 #else: | 203 #else: |
203 --checklist $action_options.input_format_conditional.checklist_id | 204 --checklist $action_options.input_format_conditional.checklist_id |
204 #end if | 205 #end if |
205 #end if | 206 #end if |
206 #if $action_options.idempotent == "true": | 207 #if $action_options.idempotent == "True": |
207 --auto_action | 208 --auto_action |
208 #end if | 209 #end if |
209 #if $action_options.test_submit_parameters.submit_dev == "true": | 210 #if $action_options.test_submit_parameters.submit_dev == "True": |
210 -d | 211 -d |
211 #end if | 212 #end if |
212 >> '$output'; | 213 >> '$output'; |
213 #end if | 214 #end if |
214 | 215 |
215 | 216 |
216 | 217 |
217 #if $action_options.action == "modify": | 218 #if $action_options.action == "modify": |
218 ena-upload-cli | 219 ena-upload-cli |
219 --tool 'ena-upload-cli v@VERSION@ @ Galaxy' | 220 --tool 'ena-upload-cli v@TOOL_VERSION@ @ Galaxy' |
220 --action '$action_options.action' | 221 --action '$action_options.action' |
221 --center '$action_options.center' | 222 --center '$action_options.center' |
222 --secret \${credentials_path} | 223 --secret \${credentials_path} |
223 --data | 224 --data |
224 #for $dataset in $files_to_upload: | 225 #for $dataset in $files_to_upload: |
225 '$dataset' | 226 '$dataset' |
226 #end for | 227 #end for |
227 #if $action_options.test_submit_parameters.dry_run == "true": | 228 #if $action_options.test_submit_parameters.dry_run == "True": |
228 --draft | 229 --draft |
229 #end if | 230 #end if |
230 #if $action_options.input_format_conditional.input_format != "excel_tables": | 231 #if $action_options.input_format_conditional.input_format != "excel_tables": |
231 --experiment '$experiments_table_path' | 232 --experiment '$experiments_table_path' |
232 --study '$studies_table_path' | 233 --study '$studies_table_path' |
239 --action 'modify' | 240 --action 'modify' |
240 #if $action_options.input_format_conditional.input_format == "user_generated_tables": | 241 #if $action_options.input_format_conditional.input_format == "user_generated_tables": |
241 --checklist $action_options.input_format_conditional.checklist_id | 242 --checklist $action_options.input_format_conditional.checklist_id |
242 #else: | 243 #else: |
243 #if $action_options.input_format_conditional.input_format == "build_tables": | 244 #if $action_options.input_format_conditional.input_format == "build_tables": |
244 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "true": | 245 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "True": |
245 --checklist ERC000033 | 246 --checklist ERC000033 |
246 #end if | 247 #end if |
247 #else: | 248 #else: |
248 --checklist $action_options.input_format_conditional.checklist_id | 249 --checklist $action_options.input_format_conditional.checklist_id |
249 #end if | 250 #end if |
250 #end if | 251 #end if |
251 >> '$output'; | 252 >> '$output'; |
252 #end if | 253 #end if |
253 | 254 |
254 #if $action_options.test_submit_parameters.dry_run == "false": | 255 #if $action_options.test_submit_parameters.dry_run == "False": |
255 echo -e 'center_name\t$action_options.center' >> '$output'; | 256 echo -e 'center_name\t$action_options.center' >> '$output'; |
256 echo -e 'action_option\t$action_options.action' >> '$output'; | 257 echo -e 'action_option\t$action_options.action' >> '$output'; |
257 #end if | 258 #end if |
258 | 259 |
259 ## copy updated files | 260 ## copy updated files |
303 $runs.append((str($run.run_base_name),$run_files)) | 304 $runs.append((str($run.run_base_name),$run_files)) |
304 #end for | 305 #end for |
305 | 306 |
306 $experiments.append({'title':str($experiment.experiment_title),'experiment_design':str($experiment.experiment_design),'library_strategy':str($experiment.library_strategy),'library_source':str($experiment.library_source),'library_selection':str($experiment.library_selection),'library_layout':str($experiment.library_layout),'insert_size':str($experiment.insert_size),'library_construction_protocol':str($experiment.library_construction_protocol),'platform':str($experiment.platform),'instrument_model':str($experiment.instrument_model),'runs':$runs}) | 307 $experiments.append({'title':str($experiment.experiment_title),'experiment_design':str($experiment.experiment_design),'library_strategy':str($experiment.library_strategy),'library_source':str($experiment.library_source),'library_selection':str($experiment.library_selection),'library_layout':str($experiment.library_layout),'insert_size':str($experiment.insert_size),'library_construction_protocol':str($experiment.library_construction_protocol),'platform':str($experiment.platform),'instrument_model':str($experiment.instrument_model),'runs':$runs}) |
307 #end for | 308 #end for |
308 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "true": | 309 #if $action_options.input_format_conditional.conditional_viral_metadata.viral_sample == "True": |
309 | |
310 $samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'collection_date':str($sample.collection_date),'geo_location':str($sample.geo_location_country),'host_common_name':str($sample.host_common_name),'host_subject_id':str($sample.host_subject_id),'host_health_state':str($sample.host_health_state),'host_sex':str($sample.host_sex),'host_scientific_name':str($sample.host_scientific_name),'collector_name':str($sample.collector_name),'collecting_institution':str($sample.collecting_institution),'isolate':str($sample.isolate),'experiments':$experiments}) | 310 $samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'collection_date':str($sample.collection_date),'geo_location':str($sample.geo_location_country),'host_common_name':str($sample.host_common_name),'host_subject_id':str($sample.host_subject_id),'host_health_state':str($sample.host_health_state),'host_sex':str($sample.host_sex),'host_scientific_name':str($sample.host_scientific_name),'collector_name':str($sample.collector_name),'collecting_institution':str($sample.collecting_institution),'isolate':str($sample.isolate),'experiments':$experiments}) |
311 #else: | 311 #else: |
312 | 312 $samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'collection_date':str($sample.collection_date),'geo_location':str($sample.geo_location_country),'experiments':$experiments}) |
313 $samples.append({'title':str($sample.sample_title),'description':str($sample.sample_description),'tax_name':str($sample.scientific_name),'tax_id':str($sample.tax_id),'experiments':$experiments}) | |
314 #end if | 313 #end if |
315 #end for | 314 #end for |
316 $studies.append({'title':str($study.study_title),'type':str($study.study_type),'abstract':str($study.study_abstract),'pubmed_id':str($study.study_pubmed_id),'samples':$samples}) | 315 $studies.append({'title':str($study.study_title),'type':str($study.study_type),'abstract':str($study.study_abstract),'pubmed_id':str($study.study_pubmed_id),'samples':$samples}) |
317 #end for | 316 #end for |
318 #echo $json.dumps($studies) | 317 #echo $json.dumps($studies) |
324 <param name="action" type="select" label="Action to execute"> | 323 <param name="action" type="select" label="Action to execute"> |
325 <option value="add" selected="True">Add new data</option> | 324 <option value="add" selected="True">Add new data</option> |
326 <option value="modify">Modify metadata</option> | 325 <option value="modify">Modify metadata</option> |
327 </param> | 326 </param> |
328 <when value="add"> | 327 <when value="add"> |
329 <param type="boolean" name="idempotent" checked="False" label="Idempotent submissions: only add the elements that were not submitted before" help="NOTE: this feature is based on a beta parameter of the CLI that checks the remote ENA repository for entries using the alias. This remote detection can have false positives, i.e assumes that it's present in the repository but it's not"/> | 328 <param type="boolean" name="idempotent" checked="False" label="Idempotent submissions: only add the elements that were not submitted before" help="NOTE: this feature is based on a beta parameter of the CLI that checks the remote ENA repository for entries using the alias. This remote detection can have False positives, i.e assumes that it's present in the repository but it's not"/> |
330 <expand macro="test_submit_section"/> | 329 <expand macro="test_submit_section"/> |
331 <param name="test_submit" type="hidden" value="False" /> | 330 <param name="test_submit" type="hidden" value="False" /> |
332 <expand macro="table_inputs_macro" /> | 331 <expand macro="table_inputs_macro" /> |
333 </when> | 332 </when> |
334 <when value="modify"> | 333 <when value="modify"> |
353 <filter> action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"</filter> | 352 <filter> action_options['input_format_conditional']['input_format'] == "build_tables" or action_options['input_format_conditional']['input_format'] == "excel_tables"</filter> |
354 </data> | 353 </data> |
355 </outputs> | 354 </outputs> |
356 <tests> | 355 <tests> |
357 <!--Test 1: excel input of VIRAL samples --> | 356 <!--Test 1: excel input of VIRAL samples --> |
358 <test> | 357 <test expect_num_outputs="5"> |
359 <conditional name="action_options"> | 358 <conditional name="action_options"> |
360 <param name="action" value="add"/> | 359 <param name="action" value="add"/> |
361 <section name="test_submit_parameters"> | 360 <section name="test_submit_parameters"> |
362 <param name="submit_dev" value="false" /> | 361 <param name="submit_dev" value="False" /> |
363 <param name="dry_run" value="true" /> | 362 <param name="dry_run" value="True" /> |
364 </section> | 363 </section> |
365 <conditional name="input_format_conditional"> | 364 <conditional name="input_format_conditional"> |
366 <param name="input_format" value="excel_tables"/> | 365 <param name="input_format" value="excel_tables"/> |
367 <param name="checklist_id" value="ERC000033"/> | 366 <param name="checklist_id" value="ERC000033"/> |
368 <param name="xlsx_file" value="metadata_test_viral.xlsx"/> | 367 <param name="xlsx_file" value="metadata_test_viral.xlsx"/> |
369 <conditional name="run_input_format_conditional"> | 368 <conditional name="run_input_format_conditional"> |
370 <param name="add_extension" value="false"/> | 369 <param name="add_extension" value="False"/> |
371 <param name="run_input_format" value="multiple_selection_list"/> | 370 <param name="run_input_format" value="multiple_selection_list"/> |
372 <param name="data" value="C030_exp5_clean.fastq,C053_exp5_clean.fastq,C026_exp5_clean.fastq,C067_exp5_clean.fastq"/> | 371 <param name="data" value="C030_exp5_clean.fastq,C053_exp5_clean.fastq,C026_exp5_clean.fastq,C067_exp5_clean.fastq"/> |
373 </conditional> | 372 </conditional> |
374 </conditional> | 373 </conditional> |
375 </conditional> | 374 </conditional> |
403 <has_line_matching expression="r_20201007_026\te_20201007_026\tC026_exp5_clean.fastq.gz\tFASTQ(.*)"/> | 402 <has_line_matching expression="r_20201007_026\te_20201007_026\tC026_exp5_clean.fastq.gz\tFASTQ(.*)"/> |
404 </assert_contents> | 403 </assert_contents> |
405 </output> | 404 </output> |
406 </test> | 405 </test> |
407 <!--Test 2: excel input of VIRAL samples with extended columns--> | 406 <!--Test 2: excel input of VIRAL samples with extended columns--> |
408 <test> | 407 <test expect_num_outputs="5"> |
409 <conditional name="action_options"> | 408 <conditional name="action_options"> |
410 <param name="action" value="add"/> | 409 <param name="action" value="add"/> |
411 <section name="test_submit_parameters"> | 410 <section name="test_submit_parameters"> |
412 <param name="submit_dev" value="false" /> | 411 <param name="submit_dev" value="False" /> |
413 <param name="dry_run" value="true" /> | 412 <param name="dry_run" value="True" /> |
414 </section> | 413 </section> |
415 <conditional name="input_format_conditional"> | 414 <conditional name="input_format_conditional"> |
416 <param name="input_format" value="excel_tables"/> | 415 <param name="input_format" value="excel_tables"/> |
417 <param name="checklist_id" value="ERC000033"/> | 416 <param name="checklist_id" value="ERC000033"/> |
418 <param name="xlsx_file" value="metadata_test_viral_optional_columns.xlsx"/> | 417 <param name="xlsx_file" value="metadata_test_viral_optional_columns.xlsx"/> |
419 <conditional name="run_input_format_conditional"> | 418 <conditional name="run_input_format_conditional"> |
420 <param name="add_extension" value="false"/> | 419 <param name="add_extension" value="False"/> |
421 <param name="run_input_format" value="multiple_selection_list"/> | 420 <param name="run_input_format" value="multiple_selection_list"/> |
422 <param name="data" value="C030_exp5_clean.fastq,C053_exp5_clean.fastq,C026_exp5_clean.fastq,C067_exp5_clean.fastq"/> | 421 <param name="data" value="C030_exp5_clean.fastq,C053_exp5_clean.fastq,C026_exp5_clean.fastq,C067_exp5_clean.fastq"/> |
423 </conditional> | 422 </conditional> |
424 </conditional> | 423 </conditional> |
425 </conditional> | 424 </conditional> |
463 <has_line_matching expression="ENA_run:"/> | 462 <has_line_matching expression="ENA_run:"/> |
464 </assert_contents> | 463 </assert_contents> |
465 </output> | 464 </output> |
466 </test> | 465 </test> |
467 <!--Test 3: excel input of NON-VIRAL samples--> | 466 <!--Test 3: excel input of NON-VIRAL samples--> |
468 <test> | 467 <test expect_num_outputs="5"> |
469 <conditional name="action_options"> | 468 <conditional name="action_options"> |
470 <param name="action" value="add"/> | 469 <param name="action" value="add"/> |
471 <section name="test_submit_parameters"> | 470 <section name="test_submit_parameters"> |
472 <param name="submit_dev" value="false" /> | 471 <param name="submit_dev" value="False" /> |
473 <param name="dry_run" value="true" /> | 472 <param name="dry_run" value="True" /> |
474 </section> | 473 </section> |
475 <conditional name="input_format_conditional"> | 474 <conditional name="input_format_conditional"> |
476 <param name="input_format" value="excel_tables"/> | 475 <param name="input_format" value="excel_tables"/> |
477 <param name="checklist_id" value="ERC000011"/> | 476 <param name="checklist_id" value="ERC000011"/> |
478 <param name="xlsx_file" value="metadata_test_nonviral_1_run.xlsx"/> | 477 <param name="xlsx_file" value="metadata_test_nonviral_1_run.xlsx"/> |
479 <conditional name="run_input_format_conditional"> | 478 <conditional name="run_input_format_conditional"> |
480 <param name="add_extension" value="true"/> | 479 <param name="add_extension" value="True"/> |
481 <param name="run_input_format" value="multiple_selection_list"/> | 480 <param name="run_input_format" value="multiple_selection_list"/> |
482 <param name="data" value="sample_no_extension"/> | 481 <param name="data" value="sample_no_extension"/> |
483 </conditional> | 482 </conditional> |
484 </conditional> | 483 </conditional> |
485 </conditional> | 484 </conditional> |
499 </assert_contents> | 498 </assert_contents> |
500 </output> | 499 </output> |
501 <output name="samples_table_out"> | 500 <output name="samples_table_out"> |
502 <assert_contents> | 501 <assert_contents> |
503 <has_n_lines n="2"/> | 502 <has_n_lines n="2"/> |
504 <has_n_columns n="8"/> | 503 <has_n_columns n="10"/> |
505 <has_line_matching expression="alias\ttitle\tscientific_name\tsample_description\taccession\tsubmission_date\tstatus\ttaxon_id"/> | 504 <has_line_matching expression="s_20201007_026\tC026\tSaccharomyces cerevisiae\tSample from beer\t2020-03-25\tAntarctica\t\t\tADDED\t"/> |
506 </assert_contents> | 505 </assert_contents> |
507 </output> | 506 </output> |
508 <output name="runs_table_out"> | 507 <output name="runs_table_out"> |
509 <assert_contents> | 508 <assert_contents> |
510 <has_n_lines n="2"/> | 509 <has_n_lines n="2"/> |
513 <has_line_matching expression="r_20201007_026\te_20201007_026\tsample_no_extension.fastq.gz\tFASTQ(.*)"/> | 512 <has_line_matching expression="r_20201007_026\te_20201007_026\tsample_no_extension.fastq.gz\tFASTQ(.*)"/> |
514 </assert_contents> | 513 </assert_contents> |
515 </output> | 514 </output> |
516 </test> | 515 </test> |
517 <!--Test 4: failure on excel input of NON-VIRAL samples with runs PAIRED collection --> | 516 <!--Test 4: failure on excel input of NON-VIRAL samples with runs PAIRED collection --> |
518 <test expect_failure="true"> | 517 <test expect_failure="True"> |
519 <conditional name="action_options"> | 518 <conditional name="action_options"> |
520 <param name="action" value="add"/> | 519 <param name="action" value="add"/> |
521 <section name="test_submit_parameters"> | 520 <section name="test_submit_parameters"> |
522 <param name="submit_dev" value="false" /> | 521 <param name="submit_dev" value="False" /> |
523 <param name="dry_run" value="false" /> | 522 <param name="dry_run" value="False" /> |
524 </section> | 523 </section> |
525 <conditional name="input_format_conditional"> | 524 <conditional name="input_format_conditional"> |
526 <param name="add_extension" value="true"/> | 525 <param name="add_extension" value="True"/> |
527 <param name="input_format" value="excel_tables"/> | 526 <param name="input_format" value="excel_tables"/> |
528 <param name="checklist_id" value="ERC000011"/> | 527 <param name="checklist_id" value="ERC000011"/> |
529 <param name="xlsx_file" value="metadata_test_nonviral.xlsx"/> | 528 <param name="xlsx_file" value="metadata_test_nonviral.xlsx"/> |
530 <conditional name="run_input_format_conditional"> | 529 <conditional name="run_input_format_conditional"> |
531 <param name="run_input_format" value="paired_list"/> | 530 <param name="run_input_format" value="paired_list"/> |
548 <has_text_matching expression="--data 'paired_run_name_1.fastq.gz' 'paired_run_name_2.fastq.gz'"/> | 547 <has_text_matching expression="--data 'paired_run_name_1.fastq.gz' 'paired_run_name_2.fastq.gz'"/> |
549 <has_text_matching expression="--action 'add' --center 'Some research center'"/> | 548 <has_text_matching expression="--action 'add' --center 'Some research center'"/> |
550 </assert_command> | 549 </assert_command> |
551 </test> | 550 </test> |
552 <!--Test 4b: failure on excel input of NON-VIRAL samples with runs PAIRED collection + Idempotent submission --> | 551 <!--Test 4b: failure on excel input of NON-VIRAL samples with runs PAIRED collection + Idempotent submission --> |
553 <test expect_failure="true"> | 552 <test expect_failure="True"> |
554 <conditional name="action_options"> | 553 <conditional name="action_options"> |
555 <param name="action" value="add"/> | 554 <param name="action" value="add"/> |
556 <section name="test_submit_parameters"> | 555 <section name="test_submit_parameters"> |
557 <param name="submit_dev" value="false" /> | 556 <param name="submit_dev" value="False" /> |
558 <param name="dry_run" value="false" /> | 557 <param name="dry_run" value="False" /> |
559 </section> | 558 </section> |
560 <param name="idempotent" value="true"/> | 559 <param name="idempotent" value="True"/> |
561 <conditional name="input_format_conditional"> | 560 <conditional name="input_format_conditional"> |
562 <param name="add_extension" value="true"/> | 561 <param name="add_extension" value="True"/> |
563 <param name="input_format" value="excel_tables"/> | 562 <param name="input_format" value="excel_tables"/> |
564 <param name="checklist_id" value="ERC000011"/> | 563 <param name="checklist_id" value="ERC000011"/> |
565 <param name="xlsx_file" value="metadata_test_nonviral.xlsx"/> | 564 <param name="xlsx_file" value="metadata_test_nonviral.xlsx"/> |
566 <conditional name="run_input_format_conditional"> | 565 <conditional name="run_input_format_conditional"> |
567 <param name="run_input_format" value="paired_list"/> | 566 <param name="run_input_format" value="paired_list"/> |
585 <has_text_matching expression="--action 'add' --center 'Some research center'"/> | 584 <has_text_matching expression="--action 'add' --center 'Some research center'"/> |
586 <has_text_matching expression="--auto_action"/> | 585 <has_text_matching expression="--auto_action"/> |
587 </assert_command> | 586 </assert_command> |
588 </test> | 587 </test> |
589 <!--Test 5: build tables from user input fields NON-VIRAL samples--> | 588 <!--Test 5: build tables from user input fields NON-VIRAL samples--> |
590 <test> | 589 <test expect_num_outputs="5"> |
591 <conditional name="action_options"> | 590 <conditional name="action_options"> |
592 <param name="action" value="add"/> | 591 <param name="action" value="add"/> |
593 <section name="test_submit_parameters"> | 592 <section name="test_submit_parameters"> |
594 <param name="submit_dev" value="false" /> | 593 <param name="submit_dev" value="False" /> |
595 <param name="dry_run" value="true" /> | 594 <param name="dry_run" value="True" /> |
596 </section> | 595 </section> |
597 <conditional name="input_format_conditional"> | 596 <conditional name="input_format_conditional"> |
598 <param name="input_format" value="build_tables"/> | 597 <param name="input_format" value="build_tables"/> |
599 <param name="add_extension" value="false"/> | 598 <param name="add_extension" value="False"/> |
600 <conditional name="conditional_viral_metadata"> | 599 <conditional name="conditional_viral_metadata"> |
601 <param name="viral_sample" value="False"/> | 600 <param name="viral_sample" value="False"/> |
602 <repeat name="rep_study"> | 601 <repeat name="rep_study"> |
603 <param name="study_title" value="Test study title"/> | 602 <param name="study_title" value="Test study title"/> |
604 <param name="study_abstract" value="Test study abstract"/> | 603 <param name="study_abstract" value="Test study abstract"/> |
607 <repeat name="rep_sample"> | 606 <repeat name="rep_sample"> |
608 <param name="sample_title" value="Test Sample title"/> | 607 <param name="sample_title" value="Test Sample title"/> |
609 <param name="sample_description" value="Test Sample description"/> | 608 <param name="sample_description" value="Test Sample description"/> |
610 <param name="scientific_name" value="Test Sample scientific name"/> | 609 <param name="scientific_name" value="Test Sample scientific name"/> |
611 <param name="tax_id" value="2697049"/> | 610 <param name="tax_id" value="2697049"/> |
611 <param name="collection_date" value="2020"/> | |
612 <param name="geo_location_country" value="Belgium"/> | |
612 <repeat name="rep_experiment"> | 613 <repeat name="rep_experiment"> |
613 <param name="experiment_title" value="Test experiment title"/> | 614 <param name="experiment_title" value="Test experiment title"/> |
614 <param name="experiment_design" value="Test experiment design description"/> | 615 <param name="experiment_design" value="Test experiment design description"/> |
615 <param name="library_strategy" value="CTS"/> | 616 <param name="library_strategy" value="CTS"/> |
616 <param name="library_source" value="GENOMIC"/> | 617 <param name="library_source" value="GENOMIC"/> |
644 </assert_contents> | 645 </assert_contents> |
645 </output> | 646 </output> |
646 <output name="samples_table_out"> | 647 <output name="samples_table_out"> |
647 <assert_contents> | 648 <assert_contents> |
648 <has_n_lines n="2"/> | 649 <has_n_lines n="2"/> |
649 <has_n_columns n="8"/> | 650 <has_n_columns n="10"/> |
650 </assert_contents> | 651 </assert_contents> |
651 </output> | 652 </output> |
652 <output name="runs_table_out"> | 653 <output name="runs_table_out"> |
653 <assert_contents> | 654 <assert_contents> |
654 <has_n_lines n="3"/> | 655 <has_n_lines n="3"/> |
655 <has_n_columns n="8"/> | 656 <has_n_columns n="8"/> |
656 <has_line_matching expression="alias\tstatus\texperiment_alias\tfile_name\tfile_format\taccession\tsubmission_date\tfile_checksum"/> | 657 <has_line_matching expression="alias\tstatus\texperiment_alias\tfile_name\tfile_format\taccession\tsubmission_date\tfile_checksum"/> |
657 </assert_contents> | 658 </assert_contents> |
658 </output> | 659 </output> |
659 </test> | 660 </test> |
660 <!--Test 6: RUN failing build tables from user input fields NON-VIRAL samples--> | 661 <!--Test 6: with submit_test to skip credentials checksRUN failing build tables from user input fields NON-VIRAL samples |
661 <test expect_failure="true"> | 662 also tests compression of uncompressed inputs and adding the .gz suffix --> |
663 <test expect_failure="False" expect_num_outputs="5"> | |
662 <conditional name="action_options"> | 664 <conditional name="action_options"> |
663 <param name="action" value="add"/> | 665 <param name="action" value="add"/> |
664 <section name="test_submit_parameters"> | 666 <section name="test_submit_parameters"> |
665 <param name="submit_dev" value="true" /> | 667 <param name="submit_dev" value="True" /> |
666 <param name="dry_run" value="false" /> | 668 <param name="dry_run" value="True" /> |
667 </section> | 669 </section> |
670 <param name="test_submit" value="True"/> | |
668 <conditional name="input_format_conditional"> | 671 <conditional name="input_format_conditional"> |
672 <param name="add_extension" value="False"/> | |
669 <param name="input_format" value="build_tables"/> | 673 <param name="input_format" value="build_tables"/> |
670 <param name="add_extension" value="true"/> | |
671 <conditional name="conditional_viral_metadata"> | 674 <conditional name="conditional_viral_metadata"> |
672 <param name="viral_sample" value="false"/> | 675 <param name="viral_sample" value="False"/> |
673 <repeat name="rep_study"> | 676 <repeat name="rep_study"> |
674 <param name="study_title" value="Test study title"/> | 677 <param name="study_title" value="Test study title"/> |
675 <param name="study_abstract" value="Test study abstract"/> | 678 <param name="study_abstract" value="Test study abstract"/> |
676 <param name="study_type" value="Epigenetics"/> | 679 <param name="study_type" value="Epigenetics"/> |
677 <param name="study_pubmed_id" value="Test study pubmedID"/> | 680 <param name="study_pubmed_id" value="Test study pubmedID"/> |
678 <repeat name="rep_sample"> | 681 <repeat name="rep_sample"> |
679 <param name="sample_title" value="Test Sample title"/> | 682 <param name="sample_title" value="Test Sample title"/> |
680 <param name="sample_description" value="Test Sample description"/> | 683 <param name="sample_description" value="Test Sample description"/> |
681 <param name="scientific_name" value="Test Sample scientific name"/> | 684 <param name="scientific_name" value="Test Sample scientific name"/> |
682 <param name="tax_id" value="2697049"/> | 685 <param name="tax_id" value="2697049"/> |
683 <repeat name="rep_experiment"> | 686 <param name="collection_date" value="2020"/> |
684 <param name="experiment_title" value="Test experiment title"/> | 687 <param name="geo_location_country" value="Belgium"/> |
685 <param name="experiment_design" value="Test experiment design description"/> | |
686 <param name="library_strategy" value="CTS"/> | |
687 <param name="library_source" value="GENOMIC"/> | |
688 <param name="library_selection" value="PCR"/> | |
689 <param name="library_layout" value="SINGLE"/> | |
690 <param name="insert_size" value="150"/> | |
691 <param name="library_construction_protocol" value="Test library construction"/> | |
692 <param name="platform" value="ILLUMINA"/> | |
693 <param name="instrument_model" value="Illumina HiSeq 4000"/> | |
694 <repeat name="rep_runs"> | |
695 <param name="upload_files" value="1.fastqsanger.gz,sample.fq" ftype="fastqsanger"/> | |
696 </repeat> | |
697 </repeat> | |
698 </repeat> | |
699 </repeat> | |
700 </conditional> | |
701 </conditional> | |
702 </conditional> | |
703 <param name="center" value="Some research center"/> | |
704 <assert_stdout> | |
705 <has_text_matching expression="No ENA credentials defined"/> | |
706 </assert_stdout> | |
707 </test> | |
708 <!--Test 7: with submit_test to skip credentials checksRUN failing build tables from user input fields NON-VIRAL samples | |
709 also tests compression of uncompressed inputs and adding the .gz suffix --> | |
710 <test expect_failure="false"> | |
711 <conditional name="action_options"> | |
712 <param name="action" value="add"/> | |
713 <section name="test_submit_parameters"> | |
714 <param name="submit_dev" value="true" /> | |
715 <param name="dry_run" value="true" /> | |
716 </section> | |
717 <param name="test_submit" value="True"/> | |
718 <conditional name="input_format_conditional"> | |
719 <param name="add_extension" value="false"/> | |
720 <param name="input_format" value="build_tables"/> | |
721 <conditional name="conditional_viral_metadata"> | |
722 <param name="viral_sample" value="false"/> | |
723 <repeat name="rep_study"> | |
724 <param name="study_title" value="Test study title"/> | |
725 <param name="study_abstract" value="Test study abstract"/> | |
726 <param name="study_type" value="Epigenetics"/> | |
727 <param name="study_pubmed_id" value="Test study pubmedID"/> | |
728 <repeat name="rep_sample"> | |
729 <param name="sample_title" value="Test Sample title"/> | |
730 <param name="sample_description" value="Test Sample description"/> | |
731 <param name="scientific_name" value="Test Sample scientific name"/> | |
732 <param name="tax_id" value="2697049"/> | |
733 <repeat name="rep_experiment"> | 688 <repeat name="rep_experiment"> |
734 <param name="experiment_title" value="Test experiment title"/> | 689 <param name="experiment_title" value="Test experiment title"/> |
735 <param name="experiment_design" value="Test experiment design description"/> | 690 <param name="experiment_design" value="Test experiment design description"/> |
736 <param name="library_strategy" value="CTS"/> | 691 <param name="library_strategy" value="CTS"/> |
737 <param name="library_source" value="GENOMIC"/> | 692 <param name="library_source" value="GENOMIC"/> |
757 <has_text_matching expression="--data '1.fastqsanger.gz' '2.fastqsanger.gz'"/> | 712 <has_text_matching expression="--data '1.fastqsanger.gz' '2.fastqsanger.gz'"/> |
758 <has_text_matching expression="--action 'add' --center 'Some research center'"/> | 713 <has_text_matching expression="--action 'add' --center 'Some research center'"/> |
759 <not_has_text text="modify" /> | 714 <not_has_text text="modify" /> |
760 </assert_command> | 715 </assert_command> |
761 </test> | 716 </test> |
762 <!--Test 8: viral submission - User input metadata - Add extension = False--> | 717 <!--Test 7: viral submission - User input metadata - Add extension = False--> |
763 <test expect_failure="false"> | 718 <test expect_failure="False" expect_num_outputs="5"> |
764 <conditional name="action_options"> | 719 <conditional name="action_options"> |
765 <param name="action" value="add"/> | 720 <param name="action" value="add"/> |
766 <section name="test_submit_parameters"> | 721 <section name="test_submit_parameters"> |
767 <param name="submit_dev" value="false" /> | 722 <param name="submit_dev" value="False" /> |
768 <param name="dry_run" value="true" /> | 723 <param name="dry_run" value="True" /> |
769 </section> | 724 </section> |
770 <param name="test_submit" value="True"/> | 725 <param name="test_submit" value="True"/> |
771 <conditional name="input_format_conditional"> | 726 <conditional name="input_format_conditional"> |
772 <param name="add_extension" value="false"/> | 727 <param name="add_extension" value="False"/> |
773 <param name="input_format" value="build_tables"/> | 728 <param name="input_format" value="build_tables"/> |
774 <conditional name="conditional_viral_metadata"> | 729 <conditional name="conditional_viral_metadata"> |
775 <param name="viral_sample" value="true"/> | 730 <param name="viral_sample" value="True"/> |
776 <repeat name="rep_study"> | 731 <repeat name="rep_study"> |
777 <param name="study_title" value="Test study title"/> | 732 <param name="study_title" value="Test study title"/> |
778 <param name="study_abstract" value="Test study abstract"/> | 733 <param name="study_abstract" value="Test study abstract"/> |
779 <param name="study_type" value="Epigenetics"/> | 734 <param name="study_type" value="Epigenetics"/> |
780 <param name="study_pubmed_id" value="Test study pubmedID"/> | 735 <param name="study_pubmed_id" value="Test study pubmedID"/> |
820 <has_text_matching expression="--data '1.fastqsanger.gz' '2.fastqsanger.gz'"/> | 775 <has_text_matching expression="--data '1.fastqsanger.gz' '2.fastqsanger.gz'"/> |
821 <has_text_matching expression="--action 'add' --center 'Some research center'"/> | 776 <has_text_matching expression="--action 'add' --center 'Some research center'"/> |
822 <has_text_matching expression="--checklist ERC000033"/> | 777 <has_text_matching expression="--checklist ERC000033"/> |
823 </assert_command> | 778 </assert_command> |
824 </test> | 779 </test> |
825 <!--Test 9: modify option and auto compression - viral submission - User input metadata--> | 780 <!--Test 8: modify option and auto compression - viral submission - User input metadata--> |
826 <test expect_failure="false"> | 781 <test expect_failure="False" expect_num_outputs="5"> |
827 <conditional name="action_options"> | 782 <conditional name="action_options"> |
828 <param name="action" value="modify"/> | 783 <param name="action" value="modify"/> |
829 <section name="test_submit_parameters"> | 784 <section name="test_submit_parameters"> |
830 <param name="submit_dev" value="false" /> | 785 <param name="submit_dev" value="False" /> |
831 <param name="dry_run" value="true" /> | 786 <param name="dry_run" value="True" /> |
832 </section> | 787 </section> |
833 <param name="test_submit" value="True"/> | 788 <param name="test_submit" value="True"/> |
834 <conditional name="input_format_conditional"> | 789 <conditional name="input_format_conditional"> |
835 <param name="add_extension" value="fasle"/> | 790 <param name="add_extension" value="False"/> |
836 <param name="input_format" value="build_tables"/> | 791 <param name="input_format" value="build_tables"/> |
837 <conditional name="conditional_viral_metadata"> | 792 <conditional name="conditional_viral_metadata"> |
838 <param name="viral_sample" value="True"/> | 793 <param name="viral_sample" value="True"/> |
839 <repeat name="rep_study"> | 794 <repeat name="rep_study"> |
840 <param name="study_title" value="Test study title"/> | 795 <param name="study_title" value="Test study title"/> |
867 <param name="library_construction_protocol" value="Test library construction"/> | 822 <param name="library_construction_protocol" value="Test library construction"/> |
868 <param name="platform" value="ILLUMINA"/> | 823 <param name="platform" value="ILLUMINA"/> |
869 <param name="instrument_model" value="Illumina HiSeq 4000"/> | 824 <param name="instrument_model" value="Illumina HiSeq 4000"/> |
870 <repeat name="rep_runs"> | 825 <repeat name="rep_runs"> |
871 <param name="run_base_name" value="run_from_hospital_X"/> | 826 <param name="run_base_name" value="run_from_hospital_X"/> |
872 <param name="upload_files" value="1.fastqsanger.gz" ftype="fastqsanger.gz"/> | 827 <param name="upload_files" value="1.fastqsanger.gz,2.fastqsanger.gz" ftype="fastqsanger.gz"/> |
873 </repeat> | 828 </repeat> |
874 </repeat> | 829 </repeat> |
875 </repeat> | 830 </repeat> |
876 </repeat> | 831 </repeat> |
877 </conditional> | 832 </conditional> |
878 </conditional> | 833 </conditional> |
879 </conditional> | 834 </conditional> |
880 <param name="center" value="Some research center"/> | 835 <param name="center" value="Some research center"/> |
881 <assert_command> | 836 <assert_command> |
882 <has_text_matching expression="ena-upload-cli"/> | 837 <has_text_matching expression="ena-upload-cli"/> |
883 <has_text_matching expression="--data '1.fastqsanger.gz'"/> | 838 <has_text_matching expression="--data '1.fastqsanger.gz' '2.fastqsanger.gz'"/> |
884 <has_text_matching expression="--action 'modify' --center 'Some research center'"/> | 839 <has_text_matching expression="--action 'modify' --center 'Some research center'"/> |
885 <has_text_matching expression="--checklist ERC000033"/> | 840 <has_text_matching expression="--checklist ERC000033"/> |
886 <not_has_text text="add" /> | 841 <not_has_text text="add" /> |
887 </assert_command> | 842 </assert_command> |
888 </test> | 843 </test> |
889 </tests> | 844 </tests> |
890 <help><![CDATA[ | 845 <help><![CDATA[ |
891 This is a wrapper for the ENA upload tool in https://github.com/usegalaxy-eu/ena-upload-cli | 846 This is a wrapper for the ENA upload tool in https://github.com/usegalaxy-eu/ena-upload-cli |
892 The input metadata can be submitted following the tabular format of the templates in https://github.com/usegalaxy-eu/ena-upload-cli/tree/master/example_tables | 847 The input metadata can be submitted following the tabular format of the templates or their excel spreadsheet equivalent in https://github.com/ELIXIR-Belgium/ENA-metadata-templates. This template repo provides ready to use sheets for every ENA sample checklist and is automatically updated. |
893 It is also possible to submit an excel file by following the template in https://github.com/ELIXIR-Belgium/ENA-metadata-templates | |
894 ]]></help> | 848 ]]></help> |
895 <citations> | 849 <citations> |
850 <citation type="doi">doi:10.1093/bioinformatics/btab421</citation> | |
896 </citations> | 851 </citations> |
897 </tool> | 852 </tool> |