-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnextflow.config
More file actions
106 lines (89 loc) · 2.48 KB
/
nextflow.config
File metadata and controls
106 lines (89 loc) · 2.48 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
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
/*
* nextflow.config — aligned with:
* - Docker image: jcap/rnaseq-pipeline:latest
* - Singularity SIF: containers/rnaseq-pipeline.sif
* - sbatch script: sets PROFILE=singularity by default
*/
params {
input_dir = 'data'
outdir = 'results'
ref = 'ref.fa'
threads = 4
ref = null
// For Singularity profile: path to a locally-built SIF
// (Build from rnaseq-pipeline.def)
sif = 'containers/rnaseq-pipeline.sif'
}
process {
executor = 'local'
cpus = { params.threads }
errorStrategy = 'terminate'
maxRetries = 1
shell = ['/bin/bash', '-ue']
}
/* ----------------------------- PROFILES ----------------------------------- */
profiles {
/*
* Local execution without environment management.
* Assumes tools exist in PATH on the host.
*/
standard {
// defaults only
}
/*
* Conda profile for local use (reproducible installs).
* Uses envs/rnaseq.yml for every process.
*/
conda {
conda.enabled = true
process {
conda = 'envs/rnaseq.yml'
}
}
/*
* Docker profile (recommended on a workstation).
* Uses a single image that contains all tools.
*/
docker {
docker.enabled = true
singularity.enabled = false
conda.enabled = false
process.container = 'rnaseq-pipeline:latest'
}
/*
* Singularity profile (recommended on HPC).
*
* Option A (default here): use a pre-built SIF file from the repo
* containers/rnaseq-pipeline.sif
*
* Option B: pull from Docker registry automatically
* container = 'docker://jcap/rnaseq-pipeline:latest'
* (uncomment that line if you prefer it and your cluster allows pulls)
*/
singularity {
docker.enabled = false
singularity.enabled = true
singularity.autoMounts = true
// singularity.cacheDir can be set via env var SINGULARITY_CACHEDIR (recommended)
process {
container = params.sif
// container = "docker://jcap/rnaseq-pipeline:latest" // Option B
}
}
/*
* SLURM profile (optional): if you want Nextflow to submit each task to SLURM
* instead of running under a single sbatch wrapper.
*
* Use ONLY if your cluster expects this style.
*/
slurm_singularity {
process.executor = 'slurm'
process.queue = 'general'
process.cpus = { params.threads }
process.memory = '32 GB'
process.time = '2h'
singularity.enabled = true
singularity.autoMounts = true
process.container = params.sif
}
}