From 2cbb303848a2375377e512fa215ace41ada6ebbd Mon Sep 17 00:00:00 2001 From: Karan Jaisingh Date: Fri, 7 Feb 2025 13:14:41 -0500 Subject: [PATCH] Integrated new params into makegq/concordance workflow --- .github/.dockstore.yml | 1 + ...akeGqRecalibratorTrainingSetFromPacBio.wdl | 18 +++++++++++++++++ wdl/SVConcordance.wdl | 20 ++++++++++++++++++- wdl/SVConcordancePacBioSample.wdl | 9 +++++++++ 4 files changed, 47 insertions(+), 1 deletion(-) diff --git a/.github/.dockstore.yml b/.github/.dockstore.yml index 17ddd07c2..d42f09cd6 100644 --- a/.github/.dockstore.yml +++ b/.github/.dockstore.yml @@ -175,6 +175,7 @@ workflows: filters: branches: - main + - kj_dragensv_benchmarking tags: - /.*/ diff --git a/wdl/MakeGqRecalibratorTrainingSetFromPacBio.wdl b/wdl/MakeGqRecalibratorTrainingSetFromPacBio.wdl index 61dc1e309..49a8aaeb6 100644 --- a/wdl/MakeGqRecalibratorTrainingSetFromPacBio.wdl +++ b/wdl/MakeGqRecalibratorTrainingSetFromPacBio.wdl @@ -44,10 +44,20 @@ workflow MakeGqRecalibratorTrainingSetFromPacBio { Float? pesr_size_similarity_strict = 0.5 Int? pesr_breakend_window_strict = 5000 + File? clustering_config_strict + File? stratification_config_strict + Array[String]? track_names_strict + Array[File]? track_intervals_strict + Float? pesr_interval_overlap_loose = 0 Float? pesr_size_similarity_loose = 0 Int? pesr_breakend_window_loose = 5000 + File? clustering_config_loose + File? stratification_config_loose + Array[String]? track_names_loose + Array[File]? track_intervals_loose + File reference_dict String sv_utils_docker @@ -184,6 +194,10 @@ workflow MakeGqRecalibratorTrainingSetFromPacBio { pesr_interval_overlap=pesr_interval_overlap_loose, pesr_size_similarity=pesr_size_similarity_loose, pesr_breakend_window=pesr_breakend_window_loose, + clustering_config = clustering_config_loose, + stratification_config = stratification_config_loose, + track_names = track_names_loose, + track_intervals = track_intervals_loose, sv_base_mini_docker=sv_base_mini_docker, sv_pipeline_docker=sv_pipeline_docker, gatk_docker=gatk_docker, @@ -201,6 +215,10 @@ workflow MakeGqRecalibratorTrainingSetFromPacBio { pesr_interval_overlap=pesr_interval_overlap_strict, pesr_size_similarity=pesr_size_similarity_strict, pesr_breakend_window=pesr_breakend_window_strict, + clustering_config = clustering_config_strict, + stratification_config = stratification_config_strict, + track_names = track_names_strict, + track_intervals = track_intervals_strict, sv_base_mini_docker=sv_base_mini_docker, sv_pipeline_docker=sv_pipeline_docker, gatk_docker=gatk_docker, diff --git a/wdl/SVConcordance.wdl b/wdl/SVConcordance.wdl index c99b01100..b0bc9fe70 100644 --- a/wdl/SVConcordance.wdl +++ b/wdl/SVConcordance.wdl @@ -13,6 +13,12 @@ workflow SVConcordance { File contig_list File reference_dict + # Reclustering parameters + File? clustering_config + File? stratification_config + Array[String]? track_names + Array[File]? track_intervals + String gatk_docker String sv_base_mini_docker @@ -30,6 +36,10 @@ workflow SVConcordance { truth_vcf=truth_vcf, output_prefix="~{output_prefix}.concordance.~{contig}.unsorted", contig=contig, + clustering_config=clustering_config, + stratification_config=stratification_config, + track_names=track_names, + track_bed_files=track_bed_files, reference_dict=reference_dict, java_mem_fraction=java_mem_fraction, gatk_docker=gatk_docker, @@ -68,6 +78,10 @@ task SVConcordanceTask { String output_prefix File reference_dict String? contig + File? clustering_config + File? stratification_config + Array[String]? track_names + Array[File]? track_intervals String? additional_args Float? java_mem_fraction @@ -120,6 +134,10 @@ task SVConcordanceTask { --eval ~{eval_vcf} \ --truth ~{truth_vcf} \ -O ~{output_prefix}.vcf.gz \ + ~{if defined(clustering_config) then "--clustering-config " + clustering_config else ""} \ + ~{if defined(stratification_config) then "--stratify-config " + stratification_config else ""} \ + ~{if defined(track_names) then "--track-name " + sep(" --track-name ", track_names) else ""} \ + ~{if defined(track_intervals) then "--track-intervals " + sep(" --track-intervals ", track_intervals) else ""} \ --do-not-sort \ ~{additional_args} >>> @@ -132,4 +150,4 @@ task SVConcordanceTask { preemptible: select_first([runtime_attr.preemptible_tries, default_attr.preemptible_tries]) maxRetries: select_first([runtime_attr.max_retries, default_attr.max_retries]) } -} +} \ No newline at end of file diff --git a/wdl/SVConcordancePacBioSample.wdl b/wdl/SVConcordancePacBioSample.wdl index 2f962c09d..ba7e32343 100644 --- a/wdl/SVConcordancePacBioSample.wdl +++ b/wdl/SVConcordancePacBioSample.wdl @@ -20,6 +20,11 @@ workflow SVConcordancePacBioSample { Float? pesr_size_similarity Int? pesr_breakend_window + File? clustering_config + File? stratification_config + Array[String]? track_names + Array[File]? track_intervals + File reference_dict # For debugging @@ -57,6 +62,10 @@ workflow SVConcordancePacBioSample { eval_vcf=sample_vcf, output_prefix="~{prefix}.concordance.~{tool_names[i]}.~{sample_id}.unsorted", additional_args="--pesr-interval-overlap ~{pesr_interval_overlap} --pesr-size-similarity ~{pesr_size_similarity} --pesr-breakend-window ~{pesr_breakend_window}", + clustering_config=clustering_config, + stratification_config=stratification_config, + track_names=track_names, + track_intervals=track_intervals, reference_dict=reference_dict, java_mem_fraction=java_mem_fraction, gatk_docker=gatk_docker,