/
sequence_to_bqsr.cwl
97 lines (95 loc) · 2.63 KB
/
sequence_to_bqsr.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
89
90
91
92
93
94
95
96
97
#!/usr/bin/env cwl-runner
cwlVersion: v1.0
class: Workflow
label: "Raw sequence data to BQSR"
requirements:
- class: SchemaDefRequirement
types:
- $import: ../types/sequence_data.yml
- $import: ../types/trimming_options.yml
- class: ScatterFeatureRequirement
- class: SubworkflowFeatureRequirement
- class: MultipleInputFeatureRequirement
inputs:
unaligned:
type: ../types/sequence_data.yml#sequence_data[]
bqsr_known_sites:
type: File[]
secondaryFiles: [.tbi]
doc: "One or more databases of known polymorphic sites used to exclude regions around known polymorphisms from analysis."
bqsr_intervals:
type: string[]?
reference:
type:
- string
- File
secondaryFiles: [.fai, ^.dict, .amb, .ann, .bwt, .pac, .sa]
trimming:
type:
- ../types/trimming_options.yml#trimming_options
- "null"
final_name:
type: string
default: 'final'
outputs:
final_bam:
type: File
outputSource: index_bam/indexed_bam
secondaryFiles: [.bai, ^.bai]
mark_duplicates_metrics_file:
type: File
outputSource: mark_duplicates_and_sort/metrics_file
steps:
align:
scatter: [unaligned]
scatterMethod: dotproduct
run: sequence_align_and_tag_adapter.cwl
in:
unaligned: unaligned
reference: reference
trimming: trimming
out:
[aligned_bam]
merge:
run: ../tools/merge_bams_samtools.cwl
in:
bams: align/aligned_bam
name: final_name
out:
[merged_bam]
name_sort:
run: ../tools/name_sort.cwl
in:
bam: merge/merged_bam
out:
[name_sorted_bam]
mark_duplicates_and_sort:
run: ../tools/mark_duplicates_and_sort.cwl
in:
bam: name_sort/name_sorted_bam
out:
[sorted_bam, metrics_file]
bqsr:
run: ../tools/bqsr.cwl
in:
reference: reference
bam: mark_duplicates_and_sort/sorted_bam
intervals: bqsr_intervals
known_sites: bqsr_known_sites
out:
[bqsr_table]
apply_bqsr:
run: ../tools/apply_bqsr.cwl
in:
reference: reference
bam: mark_duplicates_and_sort/sorted_bam
bqsr_table: bqsr/bqsr_table
output_name: final_name
out:
[bqsr_bam]
index_bam:
run: ../tools/index_bam.cwl
in:
bam: apply_bqsr/bqsr_bam
out:
[indexed_bam]