11version 1.0
22
3+ import "../tasks/tasks_utils.wdl" as utils
34import "../tasks/tasks_ncbi_tools.wdl" as ncbi_tools
4- import "../tasks/tasks_terra.wdl" as terra
55
6- workflow submit_sra {
6+ workflow submit_genbank {
77 meta {
88 description : "Submit FTP-eligible genomes to NCBI Genbank (currently only flu A/B/C and SARS-CoV-2)"
99 author : "Broad Viral Genomics"
@@ -12,30 +12,34 @@ workflow submit_sra {
1212 }
1313
1414 input {
15- # Array[File] submission_files
15+ Array [File ] submission_files # paired xml and zip files with same basenames
1616 String batch_id
1717
18- File genbank_xml
19- File genbank_zip
20-
2118 File ncbi_ftp_config_js
2219 String prod_test = "Production" # Production or Test
2320 }
2421
2522 String prefix = "/~{prod_test }/~{batch_id }"
2623
27- # TO DO: work in progress, not ready yet
28-
29- call ncbi_tools .ncbi_sftp_upload as genbank_upload {
24+ call utils .pair_files_by_basename {
3025 input :
31- config_js = ncbi_ftp_config_js ,
32- submission_xml = genbank_xml ,
33- additional_files = [genbank_zip ],
34- target_path = "~{prefix }/genbank" ,
35- wait_for = "1"
26+ left_ext = ".xml" ,
27+ right_ext = ".zip" ,
28+ files = submission_files
29+ }
30+
31+ scatter (file_pair in pair_files_by_basename .file_pairs ) {
32+ call ncbi_tools .ncbi_sftp_upload as genbank_upload {
33+ input :
34+ config_js = ncbi_ftp_config_js ,
35+ submission_xml = file_pair .left ,
36+ additional_files = [file_pair .right ],
37+ target_path = "~{prefix }/genbank/~{basename (file_pair .right )}" ,
38+ wait_for = "1"
39+ }
3640 }
3741
3842 output {
39- Array [File ] genbank_response = genbank_upload .reports_xmls
43+ Array [File ] genbank_response = flatten ( genbank_upload .reports_xmls )
4044 }
4145}
0 commit comments