From 40def8e63d39f47d35d9c74754376618ea9b1003 Mon Sep 17 00:00:00 2001 From: Christopher Tomkins-Tinch Date: Mon, 30 Aug 2021 21:48:53 -0400 Subject: [PATCH 1/3] WIP merge bams by sample in demux_deplete --- pipes/WDL/workflows/demux_deplete.wdl | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/pipes/WDL/workflows/demux_deplete.wdl b/pipes/WDL/workflows/demux_deplete.wdl index 998d0de09..4f621d003 100644 --- a/pipes/WDL/workflows/demux_deplete.wdl +++ b/pipes/WDL/workflows/demux_deplete.wdl @@ -4,6 +4,7 @@ import "../tasks/tasks_demux.wdl" as demux import "../tasks/tasks_taxon_filter.wdl" as taxon_filter import "../tasks/tasks_reports.wdl" as reports import "../tasks/tasks_ncbi.wdl" as ncbi +import "../tasks/tasks_read_utils.wdl" as read_utils workflow demux_deplete { meta { @@ -80,6 +81,7 @@ workflow demux_deplete { sub_keys = default_filename_keys } } + call demux.merge_maps as meta_sample { input: maps_jsons = meta_default_sample.out_json } @@ -109,6 +111,13 @@ workflow demux_deplete { } } + call read_utils.group_bams_by_sample as grouped_passing { + input: + bam_filepaths = select_all(cleaned_bam_passing) + } + + #scatter(name_reads in zip(group_bams_by_sample.sample_names, group_bams_by_sample.grouped_bam_filepaths)) { + #### SRA submission prep if(defined(biosample_map)) { call ncbi.sra_meta_prep { @@ -141,6 +150,18 @@ workflow demux_deplete { counts_txt = spikein.report } + scatter(name_reads in zip(grouped_passing.sample_names, grouped_passing.grouped_bam_filepaths)) { + Boolean ampseq = (meta_by_sample[name_reads.left]["amplicon_set"] != "") + String orig_name = meta_by_sample[name_reads.left]["sample_original"] + + call read_utils.merge_and_reheader_bams { + input: + in_bams = name_reads.right, + sample_name = orig_name, + out_basename = orig_name + } + } + # TO DO: flag all libraries where highest spike-in is not what was expected in extended samplesheet output { @@ -153,6 +174,7 @@ workflow demux_deplete { File meta_by_sample_json = meta_sample.merged_json Array[File] cleaned_reads_unaligned_bams = select_all(cleaned_bam_passing) + Array[File] cleaned_reads_unaligned_merged_bams = select_all(merge_and_reheader_bams.out_bam) Array[File] cleaned_bams_tiny = select_all(empty_bam) Array[Int] read_counts_depleted = deplete.depletion_read_count_post From c161a21fe908c3ca01e05fbbe73d13a6d5f192c2 Mon Sep 17 00:00:00 2001 From: Christopher Tomkins-Tinch Date: Mon, 30 Aug 2021 22:26:06 -0400 Subject: [PATCH 2/3] include ".merged" suffix in merged output basename --- pipes/WDL/workflows/demux_deplete.wdl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipes/WDL/workflows/demux_deplete.wdl b/pipes/WDL/workflows/demux_deplete.wdl index 4f621d003..d7389952d 100644 --- a/pipes/WDL/workflows/demux_deplete.wdl +++ b/pipes/WDL/workflows/demux_deplete.wdl @@ -158,7 +158,7 @@ workflow demux_deplete { input: in_bams = name_reads.right, sample_name = orig_name, - out_basename = orig_name + out_basename = "${orig_name}.merged" } } From 2e6c8a93a978d844b9d1c6a5718dc8f8a50c8a90 Mon Sep 17 00:00:00 2001 From: Christopher Tomkins-Tinch Date: Tue, 28 Sep 2021 10:55:39 -0400 Subject: [PATCH 3/3] s/meta_by_sample/meta_sample/ in demux_deplete --- pipes/WDL/workflows/demux_deplete.wdl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pipes/WDL/workflows/demux_deplete.wdl b/pipes/WDL/workflows/demux_deplete.wdl index d7389952d..459c34a2b 100644 --- a/pipes/WDL/workflows/demux_deplete.wdl +++ b/pipes/WDL/workflows/demux_deplete.wdl @@ -151,8 +151,8 @@ workflow demux_deplete { } scatter(name_reads in zip(grouped_passing.sample_names, grouped_passing.grouped_bam_filepaths)) { - Boolean ampseq = (meta_by_sample[name_reads.left]["amplicon_set"] != "") - String orig_name = meta_by_sample[name_reads.left]["sample_original"] + Boolean ampseq = (meta_sample.merged[name_reads.left]["amplicon_set"] != "") + String orig_name = meta_sample.merged[name_reads.left]["sample_original"] call read_utils.merge_and_reheader_bams { input: