forked from BCCDC-PHL/mpxv-artic-nf
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathnextflow_schema.json
316 lines (316 loc) · 11.2 KB
/
nextflow_schema.json
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://raw.githubusercontent.com/./main/nextflow_schema.json",
"title": "artic-network/artic-mpxv-illumina-nf",
"workflow_title": "Artic Network MPXV Illumina Analysis",
"description": "Run Illumina MPXV amplicon sequencing bioinformatics",
"demo_url": "",
"aws_demo_url": "",
"url": "https://github.com/artic-network/artic-mpxv-illumina-nf",
"type": "object",
"definitions": {
"input": {
"title": "Input Options",
"type": "object",
"fa_icon": "fas fa-arrow-right",
"description": "Parameters for finding and handling input data for analysis.",
"properties": {
"directory": {
"type": "string",
"title": "FASTQ",
"format": "path",
"description": "FASTQ files to use in the analysis.",
"help_text": "Directory containing the input FASTQ files"
}
},
"required": [
"directory"
]
},
"primer_scheme_selection": {
"title": "Primer Scheme Selection",
"type": "object",
"fa_icon": "fas fa-code",
"description": "Reference genome related files and options required for the workflow.",
"properties": {
"scheme_name": {
"type": "string",
"default": "artic-inrb-mpox/2500/v1.0.0",
"description": "Primer scheme version.",
"help_text": "Version of the primer scheme to use as described in the https://github.com/quick-lab/primerschemes/ repository.",
"enum": [
"artic-inrb-mpox/2500/v1.0.0",
"artic-inrb-mpox/400/v1.0.0",
"yale-mpox/2000/v1.0.0-cladei",
"yale-mpox/2000/v1.0.0-cladeii",
"bccdc-mpox/2500/v2.3.0"
]
},
"freetext_scheme_name": {
"type": "string",
"title": "Custom scheme",
"description": "Custom primer scheme name.",
"help_text": "If you wish to fetch a primer scheme from the primerschemes repository not listed above please enter it here, it must be in the format `scheme_name/scheme_length/version` as it appears in the https://github.com/quick-lab/primerschemes/ repository."
},
"custom_scheme": {
"type": "string",
"format": "path",
"description": "Path to a custom scheme.",
"help_text": "If you have a custom primer scheme you can enter the details here. This must be the full path to the directory containing your appropriately named scheme bed and fasta files; primer.bed and reference.fasta."
}
}
},
"output": {
"title": "Output Options",
"type": "object",
"fa_icon": "fas fa-arrow-left",
"description": "Parameters for saving and naming workflow outputs.",
"properties": {
"store_dir": {
"type": "string",
"format": "directory-path",
"title": "Store directory name",
"description": "Where to store the Hostile T2T reference files.",
"help_text": "Hostile T2T reference files will be downloaded as part of the workflow and saved in this location, on subsequent runs it will use the same reference. If running through epi2me it is recommended to leave this as the default but if you are not this is required otherwise the pipeline will download lots of copies of the reference in your nextflow work directory.",
"default": "store_dir"
},
"outdir": {
"type": "string",
"default": "output",
"format": "directory-path",
"description": "Directory for output of all workflow results."
},
"prefix": {
"type": "string",
"title": "Prefix",
"description": "Prefix for output files.",
"help_text": "Prefix for output files, Sequencing run name is a good choice e.g DDMMYY_MACHINEID_RUN_FLOWCELLID."
}
},
"required": [
"outdir",
"prefix",
"store_dir"
]
},
"squirrel_options": {
"title": "Squirrel Options",
"type": "object",
"description": "Options related to running Squirrel",
"properties": {
"skip_squirrel": {
"type": "boolean",
"default": false,
"title": "Skip Squirrel",
"description": "Do not run alignment and QC pipeline",
"help_text": ""
},
"clade": {
"type": "string",
"title": "Clade",
"description": "Specify whether the sequencing run is primarily `cladeI` or `cladeII`.",
"enum": [
"cladei",
"cladeia",
"cladeib",
"cladeii",
"cladeiia",
"cladeiib"
],
"help_text": ""
},
"outgroups": {
"type": "string",
"title": "Outgroups",
"hidden": true,
"description": "Specify which MPXV outgroup(s) in the alignment to use in the phylogeny.",
"help_text": "These are required by the phylogenetics module and will get pruned out from the final tree."
},
"squirrel_assembly_refs": {
"type": "string",
"format": "path",
"title": "Assembly References",
"hidden": true,
"description": "References to check for `calls to reference` against, used only by the sequence QC process.",
"help_text": ""
}
},
"required": [
"clade"
],
"fa_icon": "fas fa-address-card",
"help_text": ""
},
"resource_options": {
"title": "Resource Options",
"type": "object",
"description": "Resource options for the workflow.",
"properties": {
"max_cpus": {
"type": "integer",
"title": "Max CPUs to use for a process",
"default": 16,
"description": "Max number of CPUs to use for a process."
},
"max_memory": {
"type": "string",
"title": "Memory",
"default": "32.GB",
"description": "Maximum possible amount of memory to use for the workflow. Must be in the format 32.GB"
},
"max_time": {
"type": "string",
"title": "Max time",
"default": "12.h",
"description": "Max time to run a process before timeout killing it. Must be in the format 12.h"
}
}
},
"advanced_options": {
"title": "Advanced Options",
"type": "object",
"fa_icon": "far fa-question-circle",
"description": "Advanced options for configuring processes inside the workflow.",
"help_text": "These advanced options do not need to be changed for typical use, but allow fine tuning of workflows for users who want more control over the workflow.",
"properties": {
"skip_host_filter": {
"type": "boolean",
"title": "Skip host filtering",
"default": false,
"description": "Skip host filtering if you are not concerned about human contamination in your dataset."
},
"align_consensus": {
"type": "boolean",
"title": "Align consensus sequences to the provided reference.",
"default": false,
"description": "Align consensus sequences to the provided reference. With extremely low coverage sequences this can lead to the execution hanging as the aligner tries its best to match a long sequence of Ns to something, therefore this is off by default."
},
"normalizationTargetDepth": {
"type": "integer",
"title": "Normalisation target depth",
"default": 200,
"description": "Target depth of coverage to normalize to."
},
"discard_incorrect_primer_pairs": {
"type": "boolean",
"title": "Discard incorrect read pairs",
"default": false,
"description": "Discard read pairs that do not have the expected primer pairs, this can lead to coverage gaps in amplicon overlap regions where the fragment size is lower than the overlap so is off by default."
},
"primer_match_threshold": {
"type": "integer",
"title": "Primer fuzzy match window size",
"default": 35,
"description": "How far from the start of a read to allow a primer match. This compensates for homology between adaptor / barcode in the reference which may otherwise cause read pairs to be dropped."
},
"varMinFreqThreshold": {
"type": "number",
"title": "Ambiguous variant frequency threshold",
"default": 0.25,
"description": "Frequency threshold to call ambiguous variant"
},
"varFreqThreshold": {
"type": "number",
"title": "Unambiguous variant frequency threshold",
"default": 0.75,
"description": "Frequency threshold for unambiguous variant."
},
"varMinDepth": {
"type": "integer",
"title": "Variant caller minimum depth",
"default": 10,
"description": "Minimum coverage depth to call variant"
},
"min_mapq": {
"type": "integer",
"title": "Minimum mapping quality",
"default": 20,
"description": "Minimum mapping quality to consider a read for variant calling."
},
"skip_normalize_depth": {
"type": "boolean",
"title": "Skip depth normalization",
"default": false,
"description": "Skip depth normalization, this will make the pipeline slower."
}
}
},
"misc": {
"title": "Miscellaneous Options",
"type": "object",
"description": "Everything else.",
"default": "",
"properties": {
"help": {
"type": "boolean",
"default": false,
"description": "Display help text.",
"fa_icon": "fas fa-question-circle",
"hidden": true
},
"version": {
"type": "boolean",
"default": false,
"description": "Display version.",
"fa_icon": "fas fa-code-branch",
"hidden": true
},
"fastqSearchPath": {
"type": "string",
"title": "FASTQ search path",
"description": "Path to search for FASTQ files.",
"help_text": "Path to search for FASTQ files, this is used to find the FASTQ files in the directory specified in the `directory` parameter.",
"hidden": true
}
}
}
},
"allOf": [
{
"$ref": "#/definitions/input"
},
{
"$ref": "#/definitions/primer_scheme_selection"
},
{
"$ref": "#/definitions/output"
},
{
"$ref": "#/definitions/squirrel_options"
},
{
"$ref": "#/definitions/resource_options"
},
{
"$ref": "#/definitions/advanced_options"
},
{
"$ref": "#/definitions/misc"
}
],
"properties": {
"aws_image_prefix": {
"type": "string",
"hidden": true
},
"aws_queue": {
"type": "string",
"hidden": true
},
"show_hidden_params": {
"type": "boolean"
}
},
"resources": {
"recommended": {
"cpus": 4,
"memory": "8GB"
},
"minimum": {
"cpus": 2,
"memory": "4GB"
},
"run_time": "5 minutes per sample",
"arm_support": false
}
}