forked from nf-core/sarek
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nextflow_schema.json
836 lines (836 loc) · 47.5 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
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://raw.githubusercontent.com/nf-core/sarek/master/nextflow_schema.json",
"title": "nf-core/sarek pipeline parameters",
"description": "An open-source analysis pipeline to detect germline or somatic variants from whole genome or targeted sequencing",
"type": "object",
"definitions": {
"input_output_options": {
"title": "Input/output options",
"type": "object",
"fa_icon": "fas fa-terminal",
"description": "Define where the pipeline should find input data and save output data.",
"required": [
"input",
"step"
],
"properties": {
"input": {
"type": "string",
"fa_icon": "fas fa-dna",
"description": "Path to input file(s).",
"help_text": "Use this to specify the location of your input TSV file on `mapping`, `prepare_recalibration`, `recalibrate`, `variant_calling` and `Control-FREEC` steps (multiple files can be specified with quotes).\nIt can also be used to specify the path to a directory on `mapping` step with a single germline sample only.\nAlternatively, it can be used to specify the path to VCF input file on `annotate` step (multiple files can be specified with quotes)."
},
"step": {
"type": "string",
"default": "mapping",
"fa_icon": "fas fa-play",
"description": "Starting step.",
"help_text": "Only one step.\n> **NB** step can be specified with no concern for case, or the presence of `-` or `_`\n",
"enum": [
"mapping",
"prepare_recalibration",
"recalibrate",
"variant_calling",
"annotate",
"Control-FREEC",
"ControlFREEC",
"preparerecalibration",
"variantCalling",
"variantcalling",
"controlfreec"
]
},
"outdir": {
"type": "string",
"description": "The output directory where the results will be saved.",
"default": "./results",
"fa_icon": "fas fa-folder-open"
}
},
"help_text": ""
},
"main_options": {
"title": "Main options",
"type": "object",
"description": "Option used for most of the pipeline",
"default": "",
"properties": {
"tools": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-toolbox",
"description": "Tools to use for variant calling and/or for annotation.",
"help_text": "Multiple separated with commas.\n\nGermline variant calling can currently only be performed with the following variant callers:\n- FreeBayes, HaplotypeCaller, Manta, mpileup, Strelka, TIDDIT\n\nSomatic variant calling can currently only be performed with the following variant callers:\n- ASCAT, Control-FREEC, FreeBayes, Manta, MSIsensor, Mutect2, Strelka\n\nTumor-only somatic variant calling can currently only be performed with the following variant callers:\n- Control-FREEC, Manta, mpileup, Mutect2, TIDDIT\n\nAnnotation is done using snpEff, VEP, or even both consecutively.\n\n> **NB** As Sarek will use bgzip and tabix to compress and index VCF files annotated, it expects VCF files to be sorted.\n\n\n\n`DNAseq`, `DNAscope` and `TNscope` are only available with `--sentieon`\n\n> **NB** tools can be specified with no concern for case, or the presence of `-` or `_`\n",
"list": [
"null",
"ASCAT",
"CNVkit",
"ControlFREEC",
"FreeBayes",
"HaplotypeCaller",
"Manta",
"mpileup",
"MSIsensor",
"Mutect2",
"Strelka",
"TIDDIT",
"snpEff",
"VEP",
"merge",
"DNAseq",
"DNAscope",
"TNscope",
"ascat",
"cnvkit",
"controlfreec",
"freebayes",
"haplotypecaller",
"manta",
"msisensor",
"mutect2",
"strelka",
"tiddit",
"snpeff",
"vep",
"dnaseq",
"dnascope",
"tnscope"
]
},
"no_intervals": {
"type": "boolean",
"fa_icon": "fas fa-ban",
"description": "Disable usage of intervals.",
"help_text": "Intervals are part of the genome chopped up, used to speed up preprocessing and variant calling"
},
"nucleotides_per_second": {
"type": "number",
"fa_icon": "fas fa-clock",
"description": "Estimate interval size.",
"help_text": "Intervals are part of the genome chopped up, used to speed up preprocessing and variant calling",
"default": 1000
},
"sentieon": {
"type": "boolean",
"fa_icon": "fas fa-tools",
"description": "Enable Sentieon if available.",
"help_text": "Sentieon is a commercial solution to process genomics data with high computing efficiency, fast turnaround time, exceptional accuracy, and 100% consistency.\n\n> **NB** Adds the following tools for the `--tools` options: `DNAseq`, `DNAscope` and `TNscope`."
},
"skip_qc": {
"type": "string",
"fa_icon": "fas fa-forward",
"description": "Disable specified QC and Reporting tools.",
"help_text": "Multiple tools can be specified, separated by commas.\n\n> **NB** `--skip_qc BaseRecalibrator` is actually just not saving the reports.\n> **NB** `--skip_qc MarkDuplicates` does not skip `MarkDuplicates` but prevent the collection of duplicate metrics that slows down performance.\n> **NB** tools can be specified with no concern for case, or the presence of `-` or `_`",
"list": [
"null",
"all",
"bamQC",
"BaseRecalibrator",
"BCFtools",
"Documentation",
"FastQC",
"MarkDuplicates",
"MultiQC",
"samtools",
"vcftools",
"versions"
],
"default": "null"
},
"target_bed": {
"type": "string",
"fa_icon": "fas fa-crosshairs",
"description": "Target BED file for whole exome or targeted sequencing.",
"help_text": "This parameter does _not_ imply that the workflow is running alignment or variant calling only for the supplied targets.\nInstead, we are aligning for the whole genome, and selecting variants only at the very end by intersecting with the provided target file.\nAdding every exon as an interval in case of `WES` can generate >200K processes or jobs, much more forks, and similar number of directories in the Nextflow work directory.\nFurthermore, primers and/or baits are not 100% specific, (certainly not for MHC and KIR, etc.), quite likely there going to be reads mapping to multiple locations.\nIf you are certain that the target is unique for your genome (all the reads will certainly map to only one location), and aligning to the whole genome is an overkill, it is actually better to change the reference itself.\n\nThe recommended flow for targeted sequencing data is to use the workflow as it is, but also provide a `BED` file containing targets for all steps using the `--target_bed` option.\nThe workflow will pick up these intervals, and activate any `--exome` flag in any tools that allow it to process deeper coverage.\nIt is advised to pad the variant calling regions (exons or target) to some extent before submitting to the workflow."
}
},
"fa_icon": "fas fa-user-cog"
},
"trim_split_fastq": {
"title": "Trim/split FASTQ",
"type": "object",
"description": "",
"default": "",
"fa_icon": "fas fa-cut",
"properties": {
"trim_fastq": {
"type": "boolean",
"fa_icon": "fas fa-cut",
"description": "Run Trim Galore.",
"hidden": true,
"help_text": "Use this to perform adapter trimming with Trim Galore.\ncf [Trim Galore User Guide](https://github.com/FelixKrueger/TrimGalore/blob/master/Docs/Trim_Galore_User_Guide.md)"
},
"clip_r1": {
"type": "integer",
"fa_icon": "fas fa-cut",
"description": "Remove bp from the 5' end of read 1.",
"help_text": "This may be useful if the qualities were very poor, or if there is some sort of unwanted bias at the 5' end.\n",
"hidden": true
},
"clip_r2": {
"type": "integer",
"description": "Remove bp from the 5' end of read 2.",
"help_text": "This may be useful if the qualities were very poor, or if there is some sort of unwanted bias at the 5' end.\n",
"fa_icon": "fas fa-cut",
"hidden": true
},
"three_prime_clip_r1": {
"type": "integer",
"fa_icon": "fas fa-cut",
"description": "Remove bp from the 3' end of read 1 AFTER adapter/quality trimming has been performed.",
"help_text": "This may remove some unwanted bias from the 3' end that is not directly related to adapter sequence or basecall quality.\n",
"hidden": true
},
"three_prime_clip_r2": {
"type": "integer",
"fa_icon": "fas fa-cut",
"description": "Remove bp from the 3' end of read 2 AFTER adapter/quality trimming has been performed.",
"help_text": "This may remove some unwanted bias from the 3' end that is not directly related to adapter sequence or basecall quality.\n",
"hidden": true
},
"trim_nextseq": {
"type": "integer",
"fa_icon": "fas fa-cut",
"description": "Apply the --nextseq=X option, to trim based on quality after removing poly-G tails.",
"help_text": "This may remove some unwanted bias from the 3' end that is not directly related to adapter sequence or basecall quality.",
"hidden": true
},
"save_trimmed": {
"type": "boolean",
"fa_icon": "fas fa-save",
"description": "Save trimmed FastQ file intermediates",
"hidden": true
},
"split_fastq": {
"type": "number",
"fa_icon": "fas fa-cut",
"description": "Specify how many reads should be contained in the split FastQ file",
"help_text": "Use the Nextflow splitFastq operator to specify how many reads should be contained in the split FASTQ file.\ncf [splitfastq documentation](https://www.nextflow.io/docs/latest/operator.html#splitfastq)",
"hidden": true
}
}
},
"preprocessing": {
"title": "Preprocessing",
"type": "object",
"description": "",
"default": "",
"fa_icon": "fas fa-toolbox",
"properties": {
"aligner": {
"type": "string",
"default": "bwa-mem",
"fa_icon": "fas fa-puzzle-piece",
"enum": [
"bwa-mem",
"bwa-mem2"
],
"description": "Specify aligner to be used to map reads to reference genome.",
"help_text": "> **WARNING** Current indices for `bwa` in AWS iGenomes are not compatible with `bwa-mem2`.\n> Use `--bwa=false` to have `Sarek` build them automatically.\n\n> **WARNING** BWA-mem2 is in active development\n> Sarek might not be able to require the right amount of resources for it at the moment\n> We recommend to use pre-built indexes",
"hidden": true
},
"markdup_java_options": {
"type": "string",
"default": "-Xms4000m -Xmx7g",
"fa_icon": "fas fa-memory",
"description": "Establish values for GATK MarkDuplicates memory consumption",
"help_text": "See [SciLifeLab/Sarek/pull/689](https://github.com/SciLifeLab/Sarek/pull/689)",
"hidden": true
},
"use_gatk_spark": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Enable usage of GATK Spark implementation"
},
"save_bam_mapped": {
"type": "boolean",
"fa_icon": "fas fa-download",
"description": "Save Mapped BAMs"
},
"skip_markduplicates": {
"type": "boolean",
"fa_icon": "fas fa-fast-forward",
"description": "Skip GATK MarkDuplicates",
"help_text": "This params will also save the mapped BAMS, to enable restart from step `prepare_recalibration`"
}
}
},
"variant_calling": {
"title": "Variant Calling",
"type": "object",
"description": "",
"default": "",
"fa_icon": "fas fa-toolbox",
"properties": {
"ascat_ploidy": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-wrench",
"description": "Overwrite ASCAT ploidy",
"help_text": "Requires that `--ascat_purity` is set"
},
"ascat_purity": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-wrench",
"description": "Overwrite ASCAT purity",
"help_text": "Requires that `--ascat_ploidy` is set"
},
"cf_coeff": {
"type": "number",
"default": 0.05,
"fa_icon": "fas fa-wrench",
"description": "Overwrite Control-FREEC coefficientOfVariation"
},
"cf_contamination_adjustment": {
"type": "boolean",
"fa_icon": "fas fa-wrench",
"description": "Overwrite Control-FREEC contaminationAdjustement"
},
"cf_contamination": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-wrench",
"description": "Design known contamination value for Control-FREEC"
},
"cf_ploidy": {
"type": "number",
"default": "2",
"fa_icon": "fas fa-wrench",
"description": "Overwrite Control-FREEC ploidy"
},
"cf_window": {
"type": "number",
"fa_icon": "fas fa-wrench",
"description": "Overwrite Control-FREEC window size",
"help_text": "It is recommended to use a window size of 0 for exome data"
},
"generate_gvcf": {
"type": "boolean",
"fa_icon": "fas fa-copy",
"description": "Generate g.vcf output from GATK HaplotypeCaller"
},
"no_strelka_bp": {
"type": "boolean",
"fa_icon": "fas fa-ban",
"description": "Will not use Manta candidateSmallIndels for Strelka",
"help_text": "Not recommended by Best Practices"
},
"pon": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Panel-of-normals VCF (bgzipped) for GATK Mutect2 / Sentieon TNscope",
"help_text": "Without PON, there will be no calls with PASS in the INFO field, only an unfiltered VCF is written.\nIt is recommended to make your own PON, as it depends on sequencer and library preparation.\nFor tests in iGenomes there is a dummy PON file in the Annotation/GermlineResource directory, but it should not be used as a real PON file.\n\nSee [PON documentation](https://gatk.broadinstitute.org/hc/en-us/articles/360042479112-CreateSomaticPanelOfNormals-BETA)\n> **NB** PON file should be bgzipped."
},
"pon_index": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Index of PON panel-of-normals VCF",
"help_text": "If none provided, will be generated automatically from the PON bgzipped VCF file."
},
"ignore_soft_clipped_bases": {
"type": "boolean",
"fa_icon": "fas fa-ban",
"description": "Do not analyze soft clipped bases in the reads for GATK Mutect2",
"help_text": "use the `--dont-use-soft-clipped-bases` params with GATK."
},
"umi": {
"type": "boolean",
"fa_icon": "fas fa-tape",
"description": "If provided, UMIs steps will be run to extract and annotate the reads with UMI and create consensus reads",
"help_text": "This part of the pipeline uses fgbio to convert the FASTQ files into a unmapped BAM, where reads are tagged with the UMIs extracted from the FASTQ sequences.\nIn order to allow the correct tagging, the UMI sequence must be contained in the read sequence itself, and not in the FASTQ filename.\nFollowing this step, the unmapped BAM is aligned and reads are then grouped based on mapping position and UMI tag.\nFinally, reads in the same groups are collapsed to create a consensus read.\nTo create consensus, we have chosen to use the adjacency method\n\ncf [fgbio](https://github.com/fulcrumgenomics/fgbio)\ncf [UMIs, the problem, the solution and the proof](https://cgatoxford.wordpress.com/2015/08/14/unique-molecular-identifiers-the-problem-the-solution-and-the-proof/)\n\n> **NB** In order for the correct tagging to be performed, a read structure needs to be specified with `--read_structure1` and `--readstructure2`"
},
"read_structure1": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-clipboard-list",
"description": "When processing UMIs, a read structure should always be provided for each of the fastq files.",
"help_text": "If the read does not contain any UMI, the structure will be +T (i.e. only template of any length).\nThe read structure follows a format adopted by different tools and described in the [fgbio documentation](https://github.com/fulcrumgenomics/fgbio/wiki/Read-Structures)"
},
"read_structure2": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-clipboard-list",
"description": "When processing UMIs, a read structure should always be provided for each of the fastq files.",
"help_text": "If the read does not contain any UMI, the structure will be +T (i.e. only template of any length).\nThe read structure follows a format adopted by different tools and described in the [fgbio documentation](https://github.com/fulcrumgenomics/fgbio/wiki/Read-Structures)"
}
}
},
"annotation": {
"title": "Annotation",
"type": "object",
"description": "",
"default": "",
"fa_icon": "fas fa-toolbox",
"properties": {
"annotate_tools": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-hammer",
"description": "Specify from which tools Sarek should look for VCF files to annotate",
"help_text": "Only for step `annotate`",
"list": [
"null",
"HaplotypeCaller",
"Manta",
"Mutect2",
"Strelka",
"TIDDIT",
"haplotypecaller",
"manta",
"mutect2",
"strelka",
"tiddit"
],
"hidden": true
},
"annotation_cache": {
"type": "boolean",
"fa_icon": "fas fa-database",
"description": "Enable the use of cache for annotation",
"help_text": "And disable usage of Sarek snpeff and vep specific containers for annotation\n\nTo be used with `--snpeff_cache` and/or `--vep_cache`",
"hidden": true
},
"cadd_cache": {
"type": "boolean",
"fa_icon": "fas fa-database",
"description": "Enable CADD cache.",
"hidden": true
},
"cadd_indels": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-file",
"description": "Path to CADD InDels file.",
"hidden": true
},
"cadd_indels_tbi": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-file",
"description": "Path to CADD InDels index.",
"hidden": true
},
"cadd_wg_snvs": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-file",
"description": "Path to CADD SNVs file.",
"hidden": true
},
"cadd_wg_snvs_tbi": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-file",
"description": "Path to CADD SNVs index.",
"hidden": true
},
"genesplicer": {
"type": "boolean",
"fa_icon": "fas fa-gavel",
"description": "Enable the use of the VEP GeneSplicer plugin.",
"hidden": true
},
"snpeff_cache": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-database",
"description": "Path to snpEff cache",
"help_text": "To be used with `--annotation_cache`",
"hidden": true
},
"vep_cache": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-database",
"description": "Path to VEP cache",
"help_text": "To be used with `--annotation_cache`",
"hidden": true
}
}
},
"reference_genome_options": {
"title": "Reference genome options",
"type": "object",
"fa_icon": "fas fa-dna",
"description": "Options for the reference genome files",
"properties": {
"genome": {
"type": "string",
"description": "Name of iGenomes reference.",
"fa_icon": "fas fa-book",
"help_text": "If using a reference genome configured in the pipeline using iGenomes, use this parameter to give the ID for the reference. This is then used to build the full paths for all required reference genome files e.g. `--genome GRCh38`.\n\nSee the [nf-core website docs](https://nf-co.re/usage/reference_genomes) for more details.\n"
},
"ac_loci": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to ASCAT loci file."
},
"ac_loci_gc": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to ASCAT GC correction file."
},
"bwa": {
"type": "string",
"fa_icon": "fas fa-copy",
"description": "Path to BWA mem indices.",
"help_text": "> **NB** If none provided, will be generated automatically from the FASTA reference."
},
"chr_dir": {
"type": "string",
"fa_icon": "fas fa-folder-open",
"description": "Path to chromosomes folder."
},
"chr_length": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to chromosomes length file."
},
"dbsnp": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to dbsnp file."
},
"dbsnp_index": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to dbsnp index.",
"help_text": "> **NB** If none provided, will be generated automatically from the dbsnp file."
},
"dict": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to FASTA dictionary file.",
"help_text": "> **NB** If none provided, will be generated automatically from the FASTA reference."
},
"fasta": {
"type": "string",
"fa_icon": "fas fa-font",
"description": "Path to FASTA genome file.",
"help_text": "If you have no genome reference available, the pipeline can build one using a FASTA file. This requires additional time and resources, so it's better to use a pre-build index if possible."
},
"fasta_fai": {
"type": "string",
"fa_icon": "fas fa-file",
"help_text": "> **NB** If none provided, will be generated automatically from the FASTA reference",
"description": "Path to FASTA reference index."
},
"germline_resource": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to GATK Mutect2 Germline Resource File",
"help_text": "The germline resource VCF file (bgzipped and tabixed) needed by GATK4 Mutect2 is a collection of calls that are likely present in the sample, with allele frequencies.\nThe AF info field must be present.\nYou can find a smaller, stripped gnomAD VCF file (most of the annotation is removed and only calls signed by PASS are stored) in the AWS iGenomes Annotation/GermlineResource folder."
},
"germline_resource_index": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to GATK Mutect2 Germline Resource Index",
"help_text": "> **NB** If none provided, will be generated automatically from the Germline Resource file, if provided"
},
"intervals": {
"type": "string",
"fa_icon": "fas fa-file-alt",
"help_text": "To speed up some preprocessing and variant calling processes, the reference is chopped into smaller pieces.\nThe intervals are chromosomes cut at their centromeres (so each chromosome arm processed separately) also additional unassigned contigs.\nWe are ignoring the `hs37d5` contig that contains concatenated decoy sequences.\nParts of preprocessing and variant calling are done by these intervals, and the different resulting files are then merged.\nThis can parallelize processes, and push down wall clock time significantly.\n\nThe calling intervals can be defined using a .list or a BED file.\nA .list file contains one interval per line in the format `chromosome:start-end` (1-based coordinates).\nA BED file must be a tab-separated text file with one interval per line.\nThere must be at least three columns: chromosome, start, and end (0-based coordinates).\nAdditionally, the score column of the BED file can be used to provide an estimate of how many seconds it will take to call variants on that interval.\nThe fourth column remains unused.\n\n```\n|chr1|10000|207666|NA|47.3|\n```\nThis indicates that variant calling on the interval chr1:10001-207666 takes approximately 47.3 seconds.\n\nThe runtime estimate is used in two different ways.\nFirst, when there are multiple consecutive intervals in the file that take little time to compute, they are processed as a single job, thus reducing the number of processes that needs to be spawned.\nSecond, the jobs with largest processing time are started first, which reduces wall-clock time.\nIf no runtime is given, a time of 1000 nucleotides per second is assumed.\nActual figures vary from 2 nucleotides/second to 30000 nucleotides/second.\nIf you prefer, you can specify the full path to your reference genome when you run the pipeline:\n\n> **NB** If none provided, will be generated automatically from the FASTA reference\n> **NB** Use --no_intervals to disable automatic generation",
"description": "Path to intervals file"
},
"known_indels": {
"type": "string",
"fa_icon": "fas fa-copy",
"description": "Path to known indels file"
},
"known_indels_index": {
"type": "string",
"fa_icon": "fas fa-copy",
"description": "Path to known indels file index",
"help_text": "> **NB** If none provided, will be generated automatically from the known index file, if provided"
},
"mappability": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "Path to Control-FREEC mappability file"
},
"snpeff_db": {
"type": "string",
"fa_icon": "fas fa-database",
"description": "snpEff DB version"
},
"species": {
"type": "string",
"fa_icon": "fas fa-microscope",
"description": "snpEff species",
"help_text": "If you use AWS iGenomes or a local resource with genomes.conf, this has already been set for you appropriately."
},
"vep_cache_version": {
"type": "string",
"fa_icon": "fas fa-tag",
"description": "VEP cache version"
},
"save_reference": {
"type": "boolean",
"fa_icon": "fas fa-download",
"description": "Save built references"
},
"igenomes_base": {
"type": "string",
"description": "Directory / URL base for iGenomes references.",
"default": "s3://ngi-igenomes/igenomes",
"fa_icon": "fas fa-cloud-download-alt"
},
"genomes_base": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-map-marker-alt",
"description": "Directory / URL base for genomes references.",
"help_text": "All files are supposed to be in the same folder"
},
"igenomes_ignore": {
"type": "boolean",
"description": "Do not load the iGenomes reference config.",
"fa_icon": "fas fa-ban",
"help_text": "Do not load `igenomes.config` when running the pipeline.\nYou may choose this option if you observe clashes between custom parameters and those supplied in `igenomes.config`.\nThis option will load the `genomes.config` file instead.\n\n> **NB** You can then specify the genome custom and specify at least a FASTA genome file."
}
},
"help_text": "The pipeline config files come bundled with paths to the Illumina iGenomes reference index files.\nThe configuration is set up to use the AWS-iGenomes resource\ncf https://ewels.github.io/AWS-iGenomes/\n"
},
"generic_options": {
"title": "Generic options",
"type": "object",
"fa_icon": "fas fa-file-import",
"description": "Less common options for the pipeline, typically set in a config file.",
"help_text": "These options are common to all nf-core pipelines and allow you to customise some of the core preferences for how the pipeline runs.\n\nTypically these options would be set in a Nextflow config file loaded for all pipeline runs, such as `~/.nextflow/config`.",
"properties": {
"help": {
"type": "boolean",
"description": "Display help text.",
"fa_icon": "fas fa-question-circle",
"help_text": "You're reading it."
},
"publish_dir_mode": {
"type": "string",
"default": "copy",
"description": "Method used to save pipeline results to output directory.",
"help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.",
"fa_icon": "fas fa-copy",
"enum": [
"symlink",
"rellink",
"link",
"copy",
"copyNoFollow",
"move"
],
"hidden": true
},
"email": {
"type": "string",
"description": "Email address for completion summary.",
"fa_icon": "fas fa-envelope",
"help_text": "Set this parameter to your e-mail address to get a summary e-mail with details of the run sent to you when the workflow exits. If set in your user config file (`~/.nextflow/config`) then you don't need to specify this on the command line for every run.",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$"
},
"validate_params": {
"type": "boolean",
"description": "Boolean whether to validate parameters against the schema at runtime",
"default": true,
"fa_icon": "fas fa-check-square",
"hidden": true
},
"email_on_fail": {
"type": "string",
"description": "Email address for completion summary, only when pipeline fails.",
"fa_icon": "fas fa-exclamation-triangle",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$",
"hidden": true,
"help_text": "This works exactly as with `--email`, except emails are only sent if the workflow is not successful."
},
"plaintext_email": {
"type": "boolean",
"description": "Send plain-text email instead of HTML.",
"fa_icon": "fas fa-remove-format",
"hidden": true,
"help_text": "Set to receive plain-text e-mails instead of HTML formatted."
},
"max_multiqc_email_size": {
"type": "string",
"description": "File size limit when attaching MultiQC reports to summary emails.",
"default": "25.MB",
"fa_icon": "fas fa-file-upload",
"hidden": true,
"help_text": "If file generated by pipeline exceeds the threshold, it will not be attached."
},
"monochrome_logs": {
"type": "boolean",
"description": "Do not use coloured log outputs.",
"fa_icon": "fas fa-palette",
"hidden": true,
"help_text": "Set to disable colourful command line output and live life in monochrome."
},
"multiqc_config": {
"type": "string",
"description": "Path to MultiQC custom config file.",
"fa_icon": "fas fa-cog",
"hidden": true
},
"tracedir": {
"type": "string",
"description": "Directory to keep pipeline Nextflow logs and reports.",
"default": "${params.outdir}/pipeline_info",
"fa_icon": "fas fa-cogs",
"hidden": true
},
"sequencing_center": {
"type": "string",
"default": "null",
"fa_icon": "fas fa-university",
"description": "Name of sequencing center to be displayed in BAM file",
"help_text": "It will be in the CN field",
"hidden": true
},
"show_hidden_params": {
"type": "boolean",
"fa_icon": "far fa-eye-slash",
"description": "Show all params when using `--help`",
"hidden": true,
"help_text": "By default, parameters set as _hidden_ in the schema are not shown on the command line when a user runs with `--help`. Specifying this option will tell the pipeline to show all parameters."
}
}
},
"max_job_request_options": {
"title": "Max job request options",
"type": "object",
"fa_icon": "fab fa-acquisitions-incorporated",
"description": "Set the top limit for requested resources for any single job.",
"help_text": "If you are running on a smaller system, a pipeline step requesting more resources than are available may cause the Nextflow to stop the run with an error. These options allow you to cap the maximum resources requested by any single job so that the pipeline will run on your system.\n\nNote that you can not _increase_ the resources requested by any job using these options. For that you will need your own configuration file. See [the nf-core website](https://nf-co.re/usage/configuration) for details.",
"properties": {
"cpus": {
"type": "integer",
"default": 8,
"fa_icon": "fas fa-microchip",
"help_text": "Should be an integer e.g. `--cpus 7`"
},
"single_cpu_mem": {
"type": "string",
"default": "7 GB",
"fa_icon": "fas fa-sd-card",
"description": "Use to set memory for a single CPU.",
"help_text": "Should be a string in the format integer-unit eg. `--single_cpu_mem '8.GB'`"
},
"max_cpus": {
"type": "integer",
"description": "Maximum number of CPUs that can be requested for any single job.",
"default": 16,
"fa_icon": "fas fa-microchip",
"hidden": true,
"help_text": "Use to set an upper-limit for the CPU requirement for each process. Should be an integer e.g. `--max_cpus 1`"
},
"max_memory": {
"type": "string",
"description": "Maximum amount of memory that can be requested for any single job.",
"default": "128.GB",
"fa_icon": "fas fa-memory",
"pattern": "^\\d+(\\.\\d+)?\\.?\\s*(K|M|G|T)?B$",
"hidden": true,
"help_text": "Use to set an upper-limit for the memory requirement for each process. Should be a string in the format integer-unit e.g. `--max_memory '8.GB'`"
},
"max_time": {
"type": "string",
"description": "Maximum amount of time that can be requested for any single job.",
"default": "240.h",
"fa_icon": "far fa-clock",
"pattern": "^(\\d+\\.?\\s*(s|m|h|day)\\s*)+$",
"hidden": true,
"help_text": "Use to set an upper-limit for the time requirement for each process. Should be a string in the format integer-unit e.g. `--max_time '2.h'`"
}
}
},
"institutional_config_options": {
"title": "Institutional config options",
"type": "object",
"fa_icon": "fas fa-university",
"description": "Parameters used to describe centralised config profiles. These should not be edited.",
"help_text": "The centralised nf-core configuration profiles use a handful of pipeline parameters to describe themselves. This information is then printed to the Nextflow log when you run a pipeline. You should not need to change these values when you run a pipeline.",
"properties": {
"custom_config_version": {
"type": "string",
"description": "Git commit id for Institutional configs.",
"default": "master",
"hidden": true,
"fa_icon": "fas fa-users-cog",
"help_text": "Provide git commit id for custom Institutional configs hosted at `nf-core/configs`. This was implemented for reproducibility purposes. Default: `master`.\n\n```bash\n## Download and use config file with following git commit id\n--custom_config_version d52db660777c4bf36546ddb188ec530c3ada1b96\n```"
},
"custom_config_base": {
"type": "string",
"description": "Base directory for Institutional configs.",
"default": "https://raw.githubusercontent.com/nf-core/configs/master",
"hidden": true,
"help_text": "If you're running offline, nextflow will not be able to fetch the institutional config files from the internet. If you don't need them, then this is not a problem. If you do need them, you should download the files from the repo and tell nextflow where to find them with the `custom_config_base` option. For example:\n\n```bash\n## Download and unzip the config files\ncd /path/to/my/configs\nwget https://github.com/nf-core/configs/archive/master.zip\nunzip master.zip\n\n## Run the pipeline\ncd /path/to/my/data\nnextflow run /path/to/pipeline/ --custom_config_base /path/to/my/configs/configs-master/\n```\n\n> Note that the nf-core/tools helper package has a `download` command to download all required pipeline files + singularity containers + institutional configs in one go for you, to make this process easier.",
"fa_icon": "fas fa-users-cog"
},
"hostnames": {
"type": "string",
"description": "Institutional configs hostname.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_name": {
"type": "string",
"description": "Institutional config name.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_description": {
"type": "string",
"description": "Institutional config description.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_contact": {
"type": "string",
"description": "Institutional config contact information.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_url": {
"type": "string",
"description": "Institutional config URL link.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
}
}
}
},
"allOf": [
{
"$ref": "#/definitions/input_output_options"
},
{
"$ref": "#/definitions/main_options"
},
{
"$ref": "#/definitions/trim_split_fastq"
},
{
"$ref": "#/definitions/preprocessing"
},
{
"$ref": "#/definitions/variant_calling"
},
{
"$ref": "#/definitions/annotation"
},
{
"$ref": "#/definitions/reference_genome_options"
},
{
"$ref": "#/definitions/generic_options"
},
{
"$ref": "#/definitions/max_job_request_options"
},
{
"$ref": "#/definitions/institutional_config_options"
}
]
}