-
Notifications
You must be signed in to change notification settings - Fork 2
/
chksum_seqval_wf_paired_fq.cwl
129 lines (105 loc) · 3.07 KB
/
chksum_seqval_wf_paired_fq.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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#!/usr/bin/env cwl-runner
class: Workflow
id: "chksum-paired-seqval-workflow"
label: "CGP checksum and interleaved fastq generation workflow for a paired fastq"
cwlVersion: v1.0
requirements:
- class: ScatterFeatureRequirement
- class: StepInputExpressionRequirement
- class: InlineJavascriptRequirement
- class: MultipleInputFeatureRequirement
inputs:
fastq_in:
type:
type: array
items: File
doc: "Gzipped fastq files to import."
put_address:
type:
type: array
items: ["null", string]
doc: "PUT address to send JSON results of checksums, use list of empty strings if no PUT is required."
put_headers:
type: string[]?
doc: "Optional headers to send with JSON results."
outputs:
chksum_json:
type:
type: array
items: File
outputSource: input_chksum/chksum_json
chksum_put_server_response:
type:
type: array
items: ["null", File]
outputSource: input_chksum/server_response
interleaved_fastq_out:
type: ["null", File]
outputSource: interleave/ifastq_out
results_manifest:
type: File
outputSource: manifest_string_to_file/outfile
steps:
input_chksum:
in:
in_file:
source: fastq_in
put_address:
source: put_address
put_headers:
source: put_headers
ignore_all_curl_exits:
valueFrom: $(true)
out: [chksum_json, server_response]
scatter: [in_file, put_address]
scatterMethod: dotproduct
run: https://raw.githubusercontent.com/cancerit/dockstore-cgp-chksum/0.4.1/Dockstore.cwl
interleave:
in:
fastqs_in:
source: fastq_in
qc_pairs:
valueFrom: $(1)
out: [ifastq_out]
run: https://raw.githubusercontent.com/cancerit/dockstore-cgp-seqval/1.5.4/Dockstore.cwl
output_chksum:
in:
in_file:
source: interleave/ifastq_out
out: [chksum_json]
run: https://raw.githubusercontent.com/cancerit/dockstore-cgp-chksum/0.4.1/Dockstore.cwl
results_manifest_string:
in:
input_files:
source: fastq_in
input_chksum_results:
source: input_chksum/chksum_json
output_files:
source: [interleave/ifastq_out]
linkMerge: merge_flattened
output_chksum_results:
source: [output_chksum/chksum_json]
linkMerge: merge_flattened
out: [out_string]
run: results_manifest.cwl
manifest_string_to_file:
in:
in_string:
source: [results_manifest_string/out_string]
out: [outfile]
run: string_to_file.cwl
doc: |
A workflow to generate checksums of FastQ files and a interleaved FastQ from them. See the [workflow-seq-import](https://github.com/cancerit/workflow-seq-import) website for more information.
$schemas:
- https://schema.org/version/latest/schema.rdf
$namespaces:
s: http://schema.org/
s:codeRepository: https://github.com/cancerit/workflow-seq-import
s:license: https://spdx.org/licenses/AGPL-3.0
s:author:
- class: s:Person
s:email: mailto:yyaobo@gmail.com
s:name: Yaobo Xu
dct:creator:
foaf:name: Yaobo Xu
foaf:mbox: "genservhelp@sanger.ac.uk"