Skip to content

Commit

Permalink
Refactor pipeline outputs (#20)
Browse files Browse the repository at this point in the history
* refactor: Restructure output directory

* fix: Add missing curly brackets

* refactor: Add bakta and move panaroo

* fix: Remove deep nesting in annotation modules
  • Loading branch information
jvfe committed Feb 1, 2023
1 parent 4fd4843 commit ff53e97
Showing 1 changed file with 179 additions and 1 deletion.
180 changes: 179 additions & 1 deletion conf/modules.config
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,186 @@ params {
}
}

process{
process {
//default: do not publish process results

publishDir = [
path: { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename },
enabled: false
]

// read_processing

withName: FASTQC {
publishDir = [
path: { "${params.outdir}/read_processing/raw_fastqc/${meta.id}" },
mode: params.publish_dir_mode,
pattern: "*.html",
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: TRIM_FASTQC {
publishDir = [
path: { "${params.outdir}/read_processing/trim_fastqc/${meta.id}" },
mode: params.publish_dir_mode,
pattern: "*.html",
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: FASTP {
publishDir = [
path: { "${params.outdir}/read_processing/fastp/${meta.id}" },
mode: params.publish_dir_mode,
pattern: "*.{html,json,gz}",
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: KRAKEN2_RUN {
publishDir = [
path: { "${params.outdir}/read_processing/kraken2/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

// assembly

withName: UNICYCLER {
publishDir = [
path: { "${params.outdir}/assembly/unicycler/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: QUAST {
publishDir = [
path: { "${params.outdir}/assembly/quast/" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: CHECKM_LINEAGEWF {
publishDir = [
path: { "${params.outdir}/assembly/checkm/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

// annotation

withName: PROKKA {
publishDir = [
path: { "${params.outdir}/annotation/prokka/" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: RGI {
publishDir = [
path: { "${params.outdir}/annotation/rgi" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: MOB_RECON {
publishDir = [
path: { "${params.outdir}/annotation/mob_recon/" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: BAKTA {
publishDir = [
path: { "${params.outdir}/annotation/bakta/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: DIAMOND_BLAST_CAZY {
publishDir = [
path: { "${params.outdir}/annotation/cazy/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: DIAMOND_BLAST_VFDB {
publishDir = [
path: { "${params.outdir}/annotation/vfdb/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: DIAMOND_BLAST_BACMET {
publishDir = [
path: { "${params.outdir}/annotation/bacmet/${meta.id}" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

// pangenomics
withName: PANAROO_RUN {
ext.args = "-a core --clean-mode strict --len_dif_percent 0.70 -c 0.7 -f 0.5"
publishDir = [
path: { "${params.outdir}/pangenomics/panaroo" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

// phylogenomics
withName: IQTREE {
publishDir = [
path: { "${params.outdir}/phylogenomics/iqtree" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: FASTTREE {
publishDir = [
path: { "${params.outdir}/phylogenomics/fasttree" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: SNPSITES {
publishDir = [
path: { "${params.outdir}/phylogenomics/snpsites" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: MULTIQC {
publishDir = [
path: { "${params.outdir}/multiqc" },
mode: params.publish_dir_mode,
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
]
}

withName: GET_SOFTWARE_VERSIONS {
publishDir = [
path: { "${params.outdir}/pipeline_info" },
mode: params.publish_dir_mode,
pattern: '*_versions.yml'
]
}

}

0 comments on commit ff53e97

Please sign in to comment.