-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnextflow.config
More file actions
76 lines (70 loc) · 2.46 KB
/
nextflow.config
File metadata and controls
76 lines (70 loc) · 2.46 KB
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
/*
Pipeline parameters
*/
// Glob to capture paired-end reads, should capture R1 and R2 with brace expansion
params.reads = 'data/fastq_subset/SRR1258338*_R{1,2}.fastq.gz'
// Final output dir
params.outdir = 'results'
// If wanting to use Kraken with a DB that is already on file, use this param:
params.krakendb_dir = null
// If wanting to use Kraken with a DB that can be downloaded from the internet, use this param
// (see https://benlangmead.github.io/aws-indexes/k2. Example: 'https://genome-idx.s3.amazonaws.com/kraken/k2_pluspf_20240605.tar.gz')
params.krakendb_url = 'https://genome-idx.s3.amazonaws.com/kraken/k2_pluspfp_20240605.tar.gz'
// If wanting to use Kraken with a custom-built DB, use this param to provide a dir with genomes to add:
params.krakendb_add = null
// If wanting to use Kraken with a custom-built DB, use this param to provide a comma-separated list of 1 or more libraries
// The library options are: 'archaea', 'bacteria', 'viral', 'plasmid', 'human', 'fungi', 'plant', 'protozoa', 'UniVec', 'Univec_Core', 'nr', 'nt'
params.krakendb_libs = 'plant'
// Software environments
singularity {
enabled = true
autoMounts = true
cacheDir = '/fs/scratch/PAS0471/jelmer/containers'
}
// Process-specific config
process {
errorStrategy = 'finish' // change to 'retry' in final version
withName: 'KRAKEN_RUN' {
memory = { 175.GB * task.attempt }
cpus = 12
}
withName: 'KRAKEN_BUILD' {
time = 12.h
memory = { 100.GB * task.attempt }
cpus = 12
}
withName: 'KRAKEN_DL_LIB' {
time = 12.h
memory = 4.GB
cpus = 1
}
withName: 'ASSEMBLY' {
memory = 40.GB
cpus = 10
}
}
// Profiles
profiles {
standard {
process.executor = 'slurm'
process.clusterOptions = '--account=PAS2693'
process.time = { 60.min * task.attempt } // Or: '5 min'
process.cpus = { 2 * task.attempt }
process.memory = { 4.GB * task.cpus } // Or: '8 GB' , 5.MB
process.resourceLimits = [ time: 168.h ]
}
test_local {
process.executor = 'local'
process.cpus = 1
process.memory = 1.GB
process.resourceLimits = [ cpus: 1, memory: 1.GB, time: 1.h ]
}
test_slurm {
process.executor = 'slurm'
process.clusterOptions = '-A PAS1568'
process.memory = 4.GB
process.cpus = 1
process.time = 1.h
process.resourceLimits = [ cpus: 4, memory: 16.GB, time: 10.h ]
}
}