-
Notifications
You must be signed in to change notification settings - Fork 2
/
nextflow.config
97 lines (82 loc) · 3.13 KB
/
nextflow.config
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
// config to run pATLAS_mash_screen.nf script
manifest {
author = "Tiago F. Jesus"
description = "This Nextflow pipeline is an implementation of mash-wrapper.py " +
"and PlasmidUNCover.py. It will output a JSON file that can be " +
"imported into pATLAS."
}
// sets PYTHONPATH for utils to be available for templates
env {
PYTHONPATH = "$baseDir/templates:$baseDir/templates/assemblerflow_utils:\$PYTHONPATH"
}
//manifest.mainScript = 'main.nf'
// default values for params
params {
kMer = 21 //this is never used xD
pValue = 0.05
identity = 0.9
mash_distance = 0.1
shared_hashes = 0.8
noWinner = false
//bowtie2 unique options
trim5 = 0
cov_cutoff = 0.60 // cutoff for the coverage in mapping approach
reads = 'reads/*_{1,2}.fastq*' //this accepts that fastq.gz files are in reads folder
fasta = 'fasta/*.fas' //home/data
mash_screen = false //boolean to run mash screen. By default it is true
mapping = false //boolean to check if mapping approach is enabled. By default it is false
assembly = false //boolean to run assembly based mash dist. By default it is set to false
singleEnd = false
help = false
version = "1.1.0"
}
process {
$mashScreen.container = 'tiagofilipe12/patlasflow_mash_screen:1.6.0'
$mashOutputJson.container = 'tiagofilipe12/patlasflow_mash_screen:1.6.0'
$runMashDist.container = 'tiagofilipe12/patlasflow_mash_screen:1.6.0'
$mashDistOutputJson.container = 'tiagofilipe12/patlasflow_mash_screen:1.6.0'
$mappingBowtie.container = 'tiagofilipe12/patlasflow_mapping:1.6.0'
$mappingBowtie.scratch = true
$samtoolsView.container = 'tiagofilipe12/patlasflow_mapping:1.6.0'
$samtoolsView.scratch = true
$jsonDumpingMapping.container = 'tiagofilipe12/patlasflow_mapping:1.6.0'
}
// this should be passed with the -profile mash_screen
profiles {
// standard uses executor local and docker
standard {
docker.enabled = true
}
singularity {
cacheDir = "$HOME/.singularity_cache"
singularity.enabled = true
}
slurm {
process.executor = "slurm"
process.errorStrategy = "retry"
// option exclusive for imm-lobo cluster
//process.clusterOptions = "--exclude=compute-1"
process.maxRetries = 3
shifter.enabled = true
process {
$mashScreen.cpus = 4
$mashOutputJson.cpus = 1
$runMashDist.cpus = 4
$mashDistOutputJson.cpus = 1
$mappingBowtie.cpus = 10
$samtoolsView.cpus = 10
$jsonDumpingMapping.cpus = 1
$fullConsensus.cpus = 1
$mashScreen.memory = { 4.GB * task.attempt }
$mashOutputJson.memory = "1GB"
$runMashDist.memory = { 4.GB * task.attempt }
$mashDistOutputJson.memory = "1GB"
$mappingBowtie.memory = { 10.GB * task.attempt }
//$mappingBowtie.scratch = true
$samtoolsView.memory = { 10.GB * task.attempt }
//$samtoolsView.scratch = true
$jsonDumpingMapping.memory = "1GB"
$fullConsensus.memory = "1GB"
}
}
}