-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathnextflow.config
51 lines (45 loc) · 1.41 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
manifest {
mainScript = 'main.nf'
description = 'Import all RNAcentral data'
}
includeConfig "config/main.config"
includeConfig "config/export.config"
includeConfig "config/crs.config"
process {
container = 'oras://ghcr.io/rnacentral/rnacentral-import-pipeline:latest'
}
// local.config must should contain something like the following. I use profiles
// to help control the database I am working with:
// env {
// PGDATABASE = "postgres://user:password@host:port/name"
// }
includeConfig "local.config"
params.should_release = false
params.needs_publications = false
params.needs_taxonomy = false
params.databases.ensembl._any.run = false
// Infer the needs_publications and should_release parameters. These are
// basically flags to see if we need to download publications and if we need to
// run the database release logic
for (item in params.databases) {
def db = item.value;
def will_run = db.get('run', false);
if (item.key == 'ensembl') {
def ensembl_will_run = ['vertebrates', 'plants', 'fungi', 'protsists', 'metazoa'].any {
db[it].get('run', false)
}
will_run = ensembl_will_run
if (ensembl_will_run) {
params.databases.ensembl._any.run = ensembl_will_run
}
}
if (will_run) {
params.needs_publications = true;
if (db.get('release', true)) {
params.should_release = true;
}
if (db.get('needs_taxonomy', false)) {
params.needs_taxonomy = true
}
}
}