forked from bokulich-lab/nf-ducken
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.nf
63 lines (50 loc) · 1.84 KB
/
main.nf
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
#!/usr/bin/env nextflow
/*
========================================================================================
nf-16s-pipe
========================================================================================
Github : https://github.com/lina-kim/nf-16s-pipe
----------------------------------------------------------------------------------------
*/
nextflow.enable.dsl = 2
/*
========================================================================================
VALIDATE & PRINT PARAMETER SUMMARY
========================================================================================
*/
include { IMPORT } from './workflows/import'
include { DOWNLOAD } from './workflows/download'
/*
========================================================================================
NAMED WORKFLOW FOR PIPELINE
========================================================================================
*/
workflow NF_DUCKEN {
if (!(params.pipeline_type)) {
exit 1, 'pipeline_type parameter is required!'
}
if (params.pipeline_type == 'import') {
IMPORT ()
} else if (params.pipeline_type == 'download') {
DOWNLOAD ()
} else {
exit 1, 'pipeline_type parameter values can only be either \"import\" or \"download\"!'
}
}
/*
========================================================================================
RUN ALL WORKFLOWS
========================================================================================
*/
workflow {
NF_DUCKEN ()
}
workflow.onComplete {
if (workflow.profile.contains('conda')) {
println("Workflow completed. Cleaning up Conda environments...")
def cleanupCommand = "rm -rf $workflow.workDir/conda/"
def proc = cleanupCommand.execute()
proc.waitForProcessOutput()
println("Cleanup completed.")
}
}