Skip to content

Commit 4fdac8f

Browse files
Handle zero-length arrays in JoinRawCalls (#865)
1 parent e2e78df commit 4fdac8f

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

inputs/templates/terra_workspaces/cohort_mode/workflow_configurations/JoinRawCalls.json.tmpl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212
"JoinRawCalls.clustered_manta_vcfs" : "${this.sample_sets.clustered_manta_vcf}",
1313
"JoinRawCalls.clustered_manta_vcf_indexes" : "${this.sample_sets.clustered_manta_vcf_index}",
1414

15+
"JoinRawCalls.clustered_melt_vcfs" : "${this.sample_sets.clustered_melt_vcf}",
16+
"JoinRawCalls.clustered_melt_vcf_indexes" : "${this.sample_sets.clustered_melt_vcf_index}",
17+
1518
"JoinRawCalls.clustered_wham_vcfs" : "${this.sample_sets.clustered_wham_vcf}",
1619
"JoinRawCalls.clustered_wham_vcf_indexes" : "${this.sample_sets.clustered_wham_vcf_index}",
1720

wdl/JoinRawCalls.wdl

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ workflow JoinRawCalls {
4747
RuntimeAttr? runtime_attr_prepare_truth
4848
RuntimeAttr? runtime_attr_svcluster
4949
RuntimeAttr? runtime_override_concat_vcfs_pesr
50+
51+
Array[File]? NONE_ARRAY_ # Do not assign
5052
}
5153

5254
call tasks_cluster.CreatePloidyTableFromPed {
@@ -61,8 +63,27 @@ workflow JoinRawCalls {
6163
runtime_attr_override=runtime_attr_create_ploidy
6264
}
6365
64-
Array[Array[File]] vcf_matrix = transpose(select_all([clustered_depth_vcfs, clustered_dragen_vcfs, clustered_manta_vcfs, clustered_melt_vcfs, clustered_scramble_vcfs, clustered_wham_vcfs]))
65-
Array[Array[File]] vcf_index_matrix = transpose(select_all([clustered_depth_vcf_indexes, clustered_dragen_vcf_indexes, clustered_manta_vcf_indexes, clustered_melt_vcf_indexes, clustered_scramble_vcf_indexes, clustered_wham_vcf_indexes]))
66+
# Handle zero-length arrays
67+
Array[File]? clustered_depth_vcfs_ = if (defined(clustered_depth_vcfs) && length(select_first([clustered_depth_vcfs])) > 0) then clustered_depth_vcfs else NONE_ARRAY_
68+
Array[File]? clustered_depth_vcf_indexes_ = if (defined(clustered_depth_vcf_indexes) && length(select_first([clustered_depth_vcf_indexes])) > 0) then clustered_depth_vcf_indexes else NONE_ARRAY_
69+
70+
Array[File]? clustered_dragen_vcfs_ = if (defined(clustered_dragen_vcfs) && length(select_first([clustered_dragen_vcfs])) > 0) then clustered_dragen_vcfs else NONE_ARRAY_
71+
Array[File]? clustered_dragen_vcf_indexes_ = if (defined(clustered_dragen_vcf_indexes) && length(select_first([clustered_dragen_vcf_indexes])) > 0) then clustered_dragen_vcf_indexes else NONE_ARRAY_
72+
73+
Array[File]? clustered_manta_vcfs_ = if (defined(clustered_manta_vcfs) && length(select_first([clustered_manta_vcfs])) > 0) then clustered_manta_vcfs else NONE_ARRAY_
74+
Array[File]? clustered_manta_vcf_indexes_ = if (defined(clustered_manta_vcf_indexes) && length(select_first([clustered_manta_vcf_indexes])) > 0) then clustered_manta_vcf_indexes else NONE_ARRAY_
75+
76+
Array[File]? clustered_melt_vcfs_ = if (defined(clustered_melt_vcfs) && length(select_first([clustered_melt_vcfs])) > 0) then clustered_melt_vcfs else NONE_ARRAY_
77+
Array[File]? clustered_melt_vcf_indexes_ = if (defined(clustered_melt_vcf_indexes) && length(select_first([clustered_melt_vcf_indexes])) > 0) then clustered_melt_vcf_indexes else NONE_ARRAY_
78+
79+
Array[File]? clustered_scramble_vcfs_ = if (defined(clustered_scramble_vcfs) && length(select_first([clustered_scramble_vcfs])) > 0) then clustered_scramble_vcfs else NONE_ARRAY_
80+
Array[File]? clustered_scramble_vcf_indexes_ = if (defined(clustered_scramble_vcf_indexes) && length(select_first([clustered_scramble_vcf_indexes])) > 0) then clustered_scramble_vcf_indexes else NONE_ARRAY_
81+
82+
Array[File]? clustered_wham_vcfs_ = if (defined(clustered_wham_vcfs) && length(select_first([clustered_wham_vcfs])) > 0) then clustered_wham_vcfs else NONE_ARRAY_
83+
Array[File]? clustered_wham_vcf_indexes_ = if (defined(clustered_wham_vcf_indexes) && length(select_first([clustered_wham_vcf_indexes])) > 0) then clustered_wham_vcf_indexes else NONE_ARRAY_
84+
85+
Array[Array[File]] vcf_matrix = transpose(select_all([clustered_depth_vcfs_, clustered_dragen_vcfs_, clustered_manta_vcfs_, clustered_melt_vcfs_, clustered_scramble_vcfs_, clustered_wham_vcfs_]))
86+
Array[Array[File]] vcf_index_matrix = transpose(select_all([clustered_depth_vcf_indexes_, clustered_dragen_vcf_indexes_, clustered_manta_vcf_indexes_, clustered_melt_vcf_indexes_, clustered_scramble_vcf_indexes_, clustered_wham_vcf_indexes_]))
6687
scatter (i in range(length(vcf_matrix))) {
6788
call tasks_cohort.ConcatVcfs as ConcatInputVcfs {
6889
input:

0 commit comments

Comments
 (0)