-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathnextflow.config
More file actions
192 lines (173 loc) · 6.55 KB
/
nextflow.config
File metadata and controls
192 lines (173 loc) · 6.55 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
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
// General configuration used in all profiles
manifest {
name = "dessimozlab/FastOMA"
description = """FastOMA computes Hierarchical Orthologous Groups from proteomes."""
author = "Sina Majidian, Adrian Altenhoff"
homePage = "https://omabrowser.org"
mainScript = "FastOMA.nf"
nextflowVersion = ">=22.10.4"
defaultBranch = "main"
doi = "10.1101/2024.01.29.577392"
version = "0.6dev"
contributors = [
[
name: 'Sina Majidian',
affiliation: 'Johns Hopkins University; University of Lausanne',
github: "https://github.com/sinamajidian",
contribution: ['author', 'maintainer'],
orcid: "https://orcid.org/0000-0001-5345-6982"
],
[
name: 'Adrian Altenhoff',
affiliation: 'SIB Swiss Institute of Bioinformatics',
github: 'https://github.com/alpae',
contribution: ['author', 'maintainer'],
orcid: 'https://orcid.org/0000-0001-7492-1273'
]
]
}
params {
// default parameters for test run
// these can be overridden by the user on the command line
input = null
// input sub-folders, can also be somewhere else
proteome_folder = null
hogmap_in = null
splice_folder = null
species_tree = null
// cache path for (remote) archive input files
test_data_cache = null
// Keep deprecated parameter for backward compatibility
input_folder = null
// main output folder
output_folder = "Output"
// output subfolder definition
genetrees_folder = "${params.output_folder}/genetrees"
msa_folder = "${params.output_folder}/msa"
hogmap_folder = "${params.output_folder}/hogmap"
temp_output = "${params.output_folder}/temp_output" // temporary files for debugging
// container settings
container_name = "dessimozlab/fastoma"
container_version = "dev"
// OMAmer database for mapping to precomputed HOGs
omamer_db = "https://omabrowser.org/All/LUCA.h5"
// parameters for FastOMA
filter_method = "col-row-threshold"
filter_gap_ratio_row = 0.3
filter_gap_ratio_col = 0.5
nr_repr_per_hog = 5
min_sequence_length = 20
// other parameters
debug_enabled = false // generates additional files for debugging
help = false // prints help message
write_msas = false // store multiple sequence alignments of HOGs at each taxonomic level
write_genetrees = false // store gene trees of HOGs at each taxonomic level
force_pairwise_ortholog_generation = false // force generation of pairwise orthologs even many species are present
fasta_header_id_transformer = "noop"
// statistics directory for reports by nextflow
report = false // enable/disable report generation
statsdir = "${params.output_folder}/stats"
// configurations from nf-core for cluster specific settings
custom_config_version = "master"
custom_config_base = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}"
trace_report_suffix = new java.util.Date().format('yyyy-MM-dd_HH-mm-ss')
time_multiplier = 1
memory_multiplier = 1
}
// Load base.config by default for all pipelines
includeConfig "conf/base.config"
includeConfig !System.getenv('NXF_OFFLINE') && params.custom_config_base ? "${params.custom_config_base}/nfcore_custom.config" : "/dev/null"
profiles {
debug {
dumpHashes = true
process.beforeScript = 'echo $HOSTNAME'
cleanup = false
nextflow.enable.configProcessNamesValidation = true
}
docker {
docker.enabled = true
conda.enabled = false
singularity.enabled = false
podman.enabled = false
shifter.enabled = false
charliecloud.enabled = false
apptainer.enabled = false
docker.runOptions = '-u $(id -u):$(id -g)'
process.container = "$params.container_name:$params.container_version"
}
arm {
docker.runOptions = '-u $(id -u):$(id -g) --platform=linux/amd64'
}
singularity {
singularity.enabled = true
singularity.autoMounts = true
process.container = "$params.container_name:$params.container_version"
conda.enabled = false
docker.enabled = false
podman.enabled = false
shifter.enabled = false
charliecloud.enabled = false
apptainer.enabled = false
}
apptainer {
singularity.enabled = false
singularity.autoMounts = false
conda.enabled = false
docker.enabled = false
podman.enabled = false
shifter.enabled = false
charliecloud.enabled = false
apptainer.enabled = true
apptainer.autoMounts = true
process.container = "$params.container_name:$params.container_version"
}
conda {
conda.enabled = true
conda.createTimeout = '3 h'
process.conda = "${projectDir}/environment-conda.yml"
singularity.enabled = false
docker.enabled = false
podman.enabled = false
shifter.enabled = false
charliecloud.enabled = false
apptainer.enabled = false
}
slurm {
includeConfig 'conf/slurm_basic.config'
}
test { includeConfig 'conf/test.config' }
large { includeConfig 'conf/base_large.config' }
mammalia { includeConfig 'conf/test-mammalia.config' }
fungi { includeConfig 'conf/test-fungi.config' }
}
// Capture exit codes from upstream processes when piping
process.shell = ['/bin/bash', '-euo', 'pipefail']
plugins {
id 'nf-schema@2.4.0'
}
// Set schema validation options
validation {
help { enabled = true }
}
// Creates logs for what, when, where, and how the workflow was run
timeline {
enabled = !params.help && params.report
file = "${params.statsdir}/timeline_${params.trace_report_suffix}.html"
overwrite = true
}
report {
enabled = !params.help && params.report
file = "${params.statsdir}/report_${params.trace_report_suffix}.html"
overwrite = true
}
trace {
enabled = !params.help && params.report
file = "${params.statsdir}/trace_${params.trace_report_suffix}.txt"
//fields = "task_id,native_id,hash,name,status,submit,complete,script"
overwrite = true
}
dag {
enabled = !params.help && params.report
file = "${params.statsdir}/pipeline_dag_${params.trace_report_suffix}.html"
overwrite = true
}