-
Notifications
You must be signed in to change notification settings - Fork 4
/
nextflow_schema.json
218 lines (218 loc) · 8.18 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
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/Lodestone/master/nextflow_schema.json",
"title": "Lodestone pipeline parameters",
"description": "Genomic Sequencing pipeline for Mycobacterial isolates",
"type": "object",
"properties": {
"input_dir": {
"type": "string",
"description": "Input directory containing FASTQs or BAMs",
"format": "directory-path"
},
"pattern": {
"type": "string",
"description": "Glob pattern for FASTQs or BAM"
},
"output_dir": {
"type": "string",
"description": "Output directory",
"format": "directory-path"
},
"permissive": {
"type": "boolean",
"description": "Flag. If True, errors in decontamination will be demoted to warnings"
},
"filetype": {
"type": "string",
"default": "fastq",
"description": "Either \"fastq\" or \"bam\". Assumes FASTQs are PE Illumina reads and BAMs are mapped against one of the references in resources/",
"enum": [
"bam",
"fastq"
]
},
"unmix_myco": {
"type": "boolean",
"description": "Flag. If True then minority Mycobacteriaceae reads will be removed. If False, they will be discarded"
},
"species": {
"type": "string",
"description": "Species which will be mapped against, corresponding to references in resources/: can be one of abscessus, africanum, avium, bovis, chelonae, chimaera, fortuitum, intracellulare, kansasii, tuberculosis or null. If 'null' the top hit as determined by Afanc will be used",
"enum": [
"null",
"abscessus",
"africanum",
"avium",
"bovis",
"chelonae",
"chimaera",
"fortuitum",
"intracellulare",
"kansasii",
"tuberculosis"
]
},
"sing_dir": {
"type": "string",
"default": "${baseDir}/resources",
"description": "Directory to singularity definition files. Used to parse versions for reporting",
"format": "directory-path"
},
"config_file": {
"type": "string",
"default": "${baseDir}/nextflow.config",
"description": "Path to Nextflow config file. Used for parsing arguments to write to results if needed",
"pattern": "^\\S+\\.config$",
"format": "file-path"
}
},
"required": [
"input_dir",
"pattern",
"output_dir"
],
"$defs": {
"resources": {
"title": "resources",
"type": "object",
"description": "Paths to resources directory (only needed for custom paths)",
"default": "",
"properties": {
"resource_dir": {
"type": "string",
"description": "Path to resources directroy where utility files are stored",
"default": "${baseDir}/resources",
"format": "directory-path"
},
"refseq": {
"type": "string",
"description": "Path to NCBI refseq summary file",
"default": "${baseDir}/resources/assembly_summary_refseq.txt",
"format": "file-path"
}
}
},
"resistance": {
"title": "resistance",
"type": "object",
"description": "Parameters relating to resistance profiling",
"default": "",
"properties": {
"resistance_profiler": {
"type": "string",
"description": "Tool used for tb-profiler. Either tb-profiler or tbtamr",
"enum": [
"tb-profiler",
"tbtamr"
],
"default": "tb-profiler"
},
"collate": {
"type": "boolean",
"description": "Flag. If True resistance reports will be summarised"
}
}
},
"bowtie": {
"title": "bowtie",
"type": "object",
"description": "Parameters for running Bowtie2 for human read removal",
"default": "",
"properties": {
"bowtie_index": {
"type": "string",
"description": "Bowtie index directory",
"default": "${baseDir}/bowtie2/",
"format": "directory-path"
},
"bowtie_index_name": {
"type": "string",
"description": "Prefix for the Bowtie2 index (minus the file extensions).",
"default": "hg19_1kgmaj"
}
}
},
"afanc": {
"title": "afanc",
"type": "object",
"description": "Parameters for running Afanc. Includes the database and thresholds for reporting",
"default": "",
"properties": {
"afanc_percent_threshold": {
"type": "number",
"description": "Minimum percentage threshold for reads in order for a taxa to be considered in Afanc if the pipeline has failed earlier on (for reporting)",
"minimum": 0,
"maximum": 100,
"default": 5
},
"afanc_n_reads_threshold": {
"type": "integer",
"description": "Minimum reads threshold for reads in order for a taxa to be considered in Afanc",
"minimum": 0,
"maximum": 10000,
"default": 500
},
"afanc_fail_percent_threshold": {
"type": "number",
"description": "Minimum percentage threshold for reads in order for a taxa to be considered in Afanc",
"default": 2,
"minimum": 0,
"maximum": 100
},
"afanc_fail_n_reads_threshold": {
"type": "integer",
"description": "Minimum reads threshold for reads in order for a taxa to be considered in Afanc if the pipeline has failed earlier on (for reporting)",
"default": 200,
"minimum": 0,
"maximum": 5000
}
}
},
"kraken": {
"title": "kraken",
"type": "object",
"description": "Parameters for running Kraken2. Includes the database and thresholds for reporting",
"default": "",
"properties": {
"kraken_percent_threshold": {
"type": "number",
"description": "Percentage threshold of reads required for taxa to be included in Kraken reports",
"default": 10,
"minimum": 0,
"maximum": 100
},
"kraken_n_reads_threshold": {
"type": "integer",
"description": "Raw reads threshold required for taxa to be included in Kraken reports",
"default": 10000,
"minimum": 1000,
"maximum": 50000
},
"kraken_db": {
"type": "string",
"description": "Kraken2 database path",
"format": "directory-path",
"default": "kraken2/"
}
}
}
},
"allOf": [
{
"$ref": "#/$defs/resources"
},
{
"$ref": "#/$defs/resistance"
},
{
"$ref": "#/$defs/bowtie"
},
{
"$ref": "#/$defs/afanc"
},
{
"$ref": "#/$defs/kraken"
}
]
}