/
alignment_bwa_mem_no_trim.cwl
88 lines (78 loc) · 2.32 KB
/
alignment_bwa_mem_no_trim.cwl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#!/usr/bin/env cwl-runner
cwlVersion: v1.0
class: Workflow
requirements:
- class: InlineJavascriptRequirement
- class: StepInputExpressionRequirement
- class: MultipleInputFeatureRequirement
- class: ScatterFeatureRequirement
inputs:
job_uuid: string
interval_bed: File
input_read1: File[]
input_read2: File[]
readgroup_lines: string[]
readgroup_names: string[]
reference:
type: File
secondaryFiles: [.fai, .64.amb, .64.ann, .64.bwt, .64.pac, .64.sa, ^.dict, .amb, .ann, .bwt, .pac, .sa]
outputs:
time_metrics_from_bwa_mem_filter_dedup:
type: File[]
outputSource: bwa_mem_filter_dedup/time_metrics
time_metrics_from_merge:
type: File
outputSource: readgroups_merge/time_metrics
time_metrics_from_sort:
type: File
outputSource: bam_sort/time_metrics
time_metrics_from_reheader:
type: File
outputSource: bam_reheader/time_metrics
sorted_bam:
type: File
outputSource: bam_sort/sorted_bam
steps:
bwa_mem_filter_dedup:
run: ../../tools/harmonization/bwa_mem.cwl
scatter: [input_read1_fastq_file, input_read2_fastq_file, readgroup_line, readgroup_name]
scatterMethod: dotproduct
in:
job_uuid: job_uuid
reference: reference
input_read1_fastq_file: input_read1
input_read2_fastq_file: input_read2
readgroup_line: readgroup_lines
readgroup_name: readgroup_names
out: [readgroup_bam, time_metrics]
readgroups_merge:
run: ../../tools/harmonization/sambamba_merge.cwl
in:
job_uuid: job_uuid
bams: bwa_mem_filter_dedup/readgroup_bam
base_file_name:
source: job_uuid
valueFrom: $(self)
out: [merged_bam, time_metrics]
get_bam_new_header:
run: ../../tools/harmonization/get_bam_new_header.cwl
in:
bam: readgroups_merge/merged_bam
out: [bam_new_header]
bam_reheader:
run: ../../tools/harmonization/samtools_filter_reheader.cwl
in:
job_uuid: job_uuid
new_header: get_bam_new_header/bam_new_header
interval_bed: interval_bed
bam: readgroups_merge/merged_bam
out: [reheadered_bam, time_metrics]
bam_sort:
run: ../../tools/harmonization/sambamba_sort.cwl
in:
job_uuid: job_uuid
bam: bam_reheader/reheadered_bam
base_file_name:
source: job_uuid
valueFrom: $(self)
out: [sorted_bam, time_metrics]