Merge branch 'master' into subwf/bam_qc

This commit is contained in:
Matthias De Smet 2022-04-28 08:57:24 +02:00 committed by GitHub
commit 8303c509fe
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 443 additions and 80 deletions

View file

@ -7,8 +7,9 @@ process ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES {
'quay.io/biocontainers/antismash-lite:6.0.1--pyhdfd78af_1' }"
/*
These files are normally downloaded by download-antismash-databases itself, and must be retrieved for input by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines. This is solely for use for CI tests of the nf-core/module version of antiSMASH.
These files are normally downloaded/created by download-antismash-databases itself, and must be retrieved for input by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines. This is solely for use for CI tests of the nf-core/module version of antiSMASH.
Reason: Upon execution, the tool checks if certain database files are present within the container and if not, it tries to create them in /usr/local/bin, for which only root user has write permissions. Mounting those database files with this module prevents the tool from trying to create them.
These files are also emitted as output channels in this module to enable the antismash-lite module to use them as mount volumes to the docker/singularity containers.
*/
containerOptions {
@ -26,6 +27,9 @@ process ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES {
output:
path("antismash_db") , emit: database
path("css"), emit: css_dir
path("detection"), emit: detection_dir
path("modules"), emit: modules_dir
path "versions.yml", emit: versions
when:
@ -40,7 +44,7 @@ process ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES {
cat <<-END_VERSIONS > versions.yml
"${task.process}":
antismash: \$(antismash --version | sed 's/antiSMASH //')
antismash-lite: \$(antismash --version | sed 's/antiSMASH //')
END_VERSIONS
"""
}

View file

@ -27,17 +27,17 @@ input:
- database_css:
type: directory
description: |
antismash/outputs/html/css folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the use by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
antismash/outputs/html/css folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "css"
- database_detection:
type: directory
description: |
antismash/detection folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the use by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
antismash/detection folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "detection"
- database_modules:
type: directory
description: |
antismash/modules folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the use by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
antismash/modules folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "modules"
output:
@ -50,6 +50,21 @@ output:
type: directory
description: Download directory for antiSMASH databases
pattern: "antismash_db"
- css_dir:
type: directory
description: |
antismash/outputs/html/css folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "css"
- detection_dir:
type: directory
description: |
antismash/detection folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "detection"
- modules_dir:
type: directory
description: |
antismash/modules folder which is being created during the antiSMASH database downloading step. These files are normally downloaded by download-antismash-databases itself, and must be retrieved by the user by manually running the command with conda or a standalone installation of antiSMASH. Therefore we do not recommend using this module for production pipelines, but rather require users to specify their own local copy of the antiSMASH database in pipelines.
pattern: "modules"
authors:
- "@jasmezz"

View file

@ -4,8 +4,8 @@ process CAT_FASTQ {
conda (params.enable_conda ? "conda-forge::sed=4.7" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv1/biocontainers_v1.2.0_cv1.img' :
'biocontainers/biocontainers:v1.2.0_cv1' }"
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
input:
tuple val(meta), path(reads, stageAs: "input*/*")

View file

@ -2,10 +2,10 @@ process CUSTOM_GETCHROMSIZES {
tag "$fasta"
label 'process_low'
conda (params.enable_conda ? "bioconda::samtools=1.15" : null)
conda (params.enable_conda ? "bioconda::samtools=1.15.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/samtools:1.15--h1170115_1' :
'quay.io/biocontainers/samtools:1.15--h1170115_1' }"
'https://depot.galaxyproject.org/singularity/samtools:1.15.1--h1170115_0' :
'quay.io/biocontainers/samtools:1.15.1--h1170115_0' }"
input:
path fasta

41
modules/gamma/main.nf Normal file
View file

@ -0,0 +1,41 @@
def VERSION = '2.1' // Version information not provided by tool on CLI
process GAMMA {
tag "$meta.id"
label 'process_low'
conda (params.enable_conda ? "bioconda::gamma=2.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/gamma%3A2.1--hdfd78af_0':
'quay.io/biocontainers/gamma:2.1--hdfd78af_0' }"
input:
tuple val(meta), path(fasta)
path(db)
output:
tuple val(meta), path("*.gamma") , emit: gamma
tuple val(meta), path("*.psl") , emit: psl
tuple val(meta), path("*.gff") , optional:true , emit: gff
tuple val(meta), path("*.fasta"), optional:true , emit: fasta
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
"""
GAMMA.py \\
$args \\
$fasta \\
$db \\
$prefix
cat <<-END_VERSIONS > versions.yml
"${task.process}":
gamma: $VERSION
END_VERSIONS
"""
}

63
modules/gamma/meta.yml Normal file
View file

@ -0,0 +1,63 @@
name: "gamma"
description: Gene Allele Mutation Microbial Assessment
keywords:
- gamma
- gene-calling
tools:
- "gamma":
description: "Tool for Gene Allele Mutation Microbial Assessment"
homepage: "https://github.com/rastanton/GAMMA"
documentation: "https://github.com/rastanton/GAMMA"
tool_dev_url: "https://github.com/rastanton/GAMMA"
doi: "10.1093/bioinformatics/btab607"
licence: "['Apache License 2.0']"
input:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- fasta:
type: file
description: FASTA file
pattern: "*.{fa,fasta}"
- db:
type: file
description: Database in FASTA format
pattern: "*.{fa,fasta}"
output:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- versions:
type: file
description: File containing software versions
pattern: "versions.yml"
- gamma:
type: file
description: GAMMA file with annotated gene matches
pattern: "*.{gamma}"
- psl:
type: file
description: PSL file with all gene matches found
pattern: "*.{psl}"
- gff:
type: file
description: GFF file
pattern: "*.{gff}"
- fasta:
type: file
description: multifasta file of the gene matches
pattern: "*.{fasta}"
authors:
- "@sateeshperi"
- "@rastanton"

View file

@ -8,7 +8,7 @@ process GATK4_SPLITNCIGARREADS {
'quay.io/biocontainers/gatk4:4.2.5.0--hdfd78af_0' }"
input:
tuple val(meta), path(bam)
tuple val(meta), path(bam), path(bai), path(intervals)
path fasta
path fai
path dict
@ -23,6 +23,7 @@ process GATK4_SPLITNCIGARREADS {
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
def interval_command = intervals ? "--intervals $intervals" : ""
def avail_mem = 3
if (!task.memory) {
@ -35,6 +36,7 @@ process GATK4_SPLITNCIGARREADS {
--input $bam \\
--output ${prefix}.bam \\
--reference $fasta \\
$interval_command \\
--tmp-dir . \\
$args

View file

@ -23,6 +23,13 @@ input:
type: list
description: BAM/SAM/CRAM file containing reads
pattern: "*.{bam,sam,cram}"
- bai:
type: list
description: BAI/SAI/CRAI index file (optional)
pattern: "*.{bai,sai,crai}"
- intervals:
type: file
description: Bed file with the genomic regions included in the library (optional)
- fasta:
type: file
description: The reference fasta file

View file

@ -4,8 +4,8 @@ process GUNZIP {
conda (params.enable_conda ? "conda-forge::sed=4.7" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv1/biocontainers_v1.2.0_cv1.img' :
'biocontainers/biocontainers:v1.2.0_cv1' }"
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
input:
tuple val(meta), path(archive)

View file

@ -2,17 +2,21 @@ process MINIMAP2_ALIGN {
tag "$meta.id"
label 'process_medium'
conda (params.enable_conda ? 'bioconda::minimap2=2.21' : null)
conda (params.enable_conda ? 'bioconda::minimap2=2.21 bioconda::samtools=1.12' : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/minimap2:2.21--h5bf99c6_0' :
'quay.io/biocontainers/minimap2:2.21--h5bf99c6_0' }"
'https://depot.galaxyproject.org/singularity/mulled-v2-66534bcbb7031a148b13e2ad42583020b9cd25c4:1679e915ddb9d6b4abda91880c4b48857d471bd8-0' :
'quay.io/biocontainers/mulled-v2-66534bcbb7031a148b13e2ad42583020b9cd25c4:1679e915ddb9d6b4abda91880c4b48857d471bd8-0' }"
input:
tuple val(meta), path(reads)
path reference
val bam_format
val cigar_paf_format
val cigar_bam
output:
tuple val(meta), path("*.paf"), emit: paf
tuple val(meta), path("*.paf"), optional: true, emit: paf
tuple val(meta), path("*.bam"), optional: true, emit: bam
path "versions.yml" , emit: versions
when:
@ -22,13 +26,19 @@ process MINIMAP2_ALIGN {
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
def input_reads = meta.single_end ? "$reads" : "${reads[0]} ${reads[1]}"
def bam_output = bam_format ? "-a | samtools sort | samtools view -@ ${task.cpus} -b -h -o ${prefix}.bam" : "-o ${prefix}.paf"
def cigar_paf = cigar_paf_format && !sam_format ? "-c" : ''
def set_cigar_bam = cigar_bam && sam_format ? "-L" : ''
"""
minimap2 \\
$args \\
-t $task.cpus \\
$reference \\
$input_reads \\
> ${prefix}.paf
$cigar_paf \\
$set_cigar_bam \\
$bam_output
cat <<-END_VERSIONS > versions.yml
"${task.process}":

View file

@ -29,6 +29,17 @@ input:
type: file
description: |
Reference database in FASTA format.
- bam_format:
type: boolean
description: Specify that output should be in BAM format
- cigar_paf_format:
type: boolean
description: Specify that output CIGAR should be in PAF format
- cigar_bam:
type: boolean
description: |
Write CIGAR with >65535 ops at the CG tag. This is recommended when
doing XYZ (https://github.com/lh3/minimap2#working-with-65535-cigar-operations)
output:
- meta:
type: map
@ -39,9 +50,16 @@ output:
type: file
description: Alignment in PAF format
pattern: "*.paf"
- bam:
type: file
description: Alignment in BAM format
pattern: "*.bam"
- versions:
type: file
description: File containing software versions
pattern: "versions.yml"
authors:
- "@heuermh"
- "@sofstam"
- "@sateeshperi"
- "@jfy133"

View file

@ -23,10 +23,11 @@ process PHANTOMPEAKQUALTOOLS {
script:
def args = task.ext.args ?: ''
def args2 = task.ext.args2 ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
"""
RUN_SPP=`which run_spp.R`
Rscript $args -e "library(caTools); source(\\"\$RUN_SPP\\")" -c="$bam" -savp="${prefix}.spp.pdf" -savd="${prefix}.spp.Rdata" -out="${prefix}.spp.out" -p=$task.cpus
Rscript $args -e "library(caTools); source(\\"\$RUN_SPP\\")" -c="$bam" -savp="${prefix}.spp.pdf" -savd="${prefix}.spp.Rdata" -out="${prefix}.spp.out" $args2
cat <<-END_VERSIONS > versions.yml
"${task.process}":

View file

@ -2,10 +2,10 @@ process RSEM_CALCULATEEXPRESSION {
tag "$meta.id"
label 'process_high'
conda (params.enable_conda ? "bioconda::rsem=1.3.3 bioconda::star=2.7.6a" : null)
conda (params.enable_conda ? "bioconda::rsem=1.3.3 bioconda::star=2.7.10a" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:606b713ec440e799d53a2b51a6e79dbfd28ecf3e-0' :
'quay.io/biocontainers/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:606b713ec440e799d53a2b51a6e79dbfd28ecf3e-0' }"
'https://depot.galaxyproject.org/singularity/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:64aad4a4e144878400649e71f42105311be7ed87-0' :
'quay.io/biocontainers/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:64aad4a4e144878400649e71f42105311be7ed87-0' }"
input:
tuple val(meta), path(reads)

View file

@ -2,10 +2,10 @@ process RSEM_PREPAREREFERENCE {
tag "$fasta"
label 'process_high'
conda (params.enable_conda ? "bioconda::rsem=1.3.3 bioconda::star=2.7.6a" : null)
conda (params.enable_conda ? "bioconda::rsem=1.3.3 bioconda::star=2.7.10a" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:606b713ec440e799d53a2b51a6e79dbfd28ecf3e-0' :
'quay.io/biocontainers/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:606b713ec440e799d53a2b51a6e79dbfd28ecf3e-0' }"
'https://depot.galaxyproject.org/singularity/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:64aad4a4e144878400649e71f42105311be7ed87-0' :
'quay.io/biocontainers/mulled-v2-cf0123ef83b3c38c13e3b0696a3f285d3f20f15b:64aad4a4e144878400649e71f42105311be7ed87-0' }"
input:
path fasta, stageAs: "rsem/*"

View file

@ -0,0 +1,35 @@
//There is a -L option to only output alignments in interval, might be an option for exons/panel data?
process SAMTOOLS_BAMTOCRAM {
tag "$meta.id"
label 'process_medium'
conda (params.enable_conda ? "bioconda::samtools=1.15.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/samtools:1.15.1--h1170115_0' :
'quay.io/biocontainers/samtools:1.15.1--h1170115_0' }"
input:
tuple val(meta), path(input), path(index)
path fasta
path fai
output:
tuple val(meta), path("*.cram"), path("*.crai"), emit: cram_crai
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
"""
samtools view --threads ${task.cpus} --reference ${fasta} -C $args $input > ${prefix}.cram
samtools index -@${task.cpus} ${prefix}.cram
cat <<-END_VERSIONS > versions.yml
"${task.process}":
samtools: \$(echo \$(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*\$//')
END_VERSIONS
"""
}

View file

@ -0,0 +1,52 @@
name: samtools_bamtocram
description: filter/convert and then index CRAM file
keywords:
- view
- index
- bam
- cram
tools:
- samtools:
description: |
SAMtools is a set of utilities for interacting with and post-processing
short DNA sequence read alignments in the SAM, BAM and CRAM formats, written by Heng Li.
These files are generated as output by short read aligners like BWA.
homepage: http://www.htslib.org/
documentation: hhttp://www.htslib.org/doc/samtools.html
doi: 10.1093/bioinformatics/btp352
licence: ["MIT"]
input:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- input:
type: file
description: BAM/SAM file
pattern: "*.{bam,sam}"
- index:
type: file
description: BAM/SAM index file
pattern: "*.{bai,sai}"
- fasta:
type: file
description: Reference file to create the CRAM file
pattern: "*.{fasta,fa}"
output:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- cram_crai:
type: file
description: filtered/converted CRAM file + index
pattern: "*{.cram,.crai}"
- version:
type: file
description: File containing software version
pattern: "*.{version.txt}"
authors:
- "@FriederikeHanssen"
- "@maxulysse"

View file

@ -2,10 +2,10 @@ process STRINGTIE_MERGE {
label 'process_medium'
// Note: 2.7X indices incompatible with AWS iGenomes.
conda (params.enable_conda ? "bioconda::stringtie=2.1.7" : null)
conda (params.enable_conda ? "bioconda::stringtie=2.2.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/stringtie:2.1.7--h978d192_0' :
'quay.io/biocontainers/stringtie:2.1.7--h978d192_0' }"
'https://depot.galaxyproject.org/singularity/stringtie:2.2.1--hecb563c_2' :
'quay.io/biocontainers/stringtie:2.2.1--hecb563c_2' }"
input:
path stringtie_gtf

View file

@ -1,11 +1,11 @@
process STRINGTIE {
process STRINGTIE_STRINGTIE {
tag "$meta.id"
label 'process_medium'
conda (params.enable_conda ? "bioconda::stringtie=2.1.7" : null)
conda (params.enable_conda ? "bioconda::stringtie=2.2.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/stringtie:2.1.7--h978d192_0' :
'quay.io/biocontainers/stringtie:2.1.7--h978d192_0' }"
'https://depot.galaxyproject.org/singularity/stringtie:2.2.1--hecb563c_2' :
'quay.io/biocontainers/stringtie:2.2.1--hecb563c_2' }"
input:
tuple val(meta), path(bam)

View file

@ -1,4 +1,4 @@
name: stringtie
name: stringtie_stringtie
description: Transcript assembly and quantification for RNA-Se
keywords:
- transcript

View file

@ -11,12 +11,13 @@ process TRIMGALORE {
tuple val(meta), path(reads)
output:
tuple val(meta), path("*.fq.gz") , emit: reads
tuple val(meta), path("*{trimmed,val}*.fq.gz"), emit: reads
tuple val(meta), path("*report.txt") , emit: log
path "versions.yml" , emit: versions
tuple val(meta), path("*.html"), emit: html optional true
tuple val(meta), path("*.zip") , emit: zip optional true
tuple val(meta), path("*unpaired*.fq.gz") , emit: unpaired, optional: true
tuple val(meta), path("*.html") , emit: html , optional: true
tuple val(meta), path("*.zip") , emit: zip , optional: true
when:
task.ext.when == null || task.ext.when
@ -52,6 +53,7 @@ process TRIMGALORE {
$c_r1 \\
$tpc_r1 \\
${prefix}.fastq.gz
cat <<-END_VERSIONS > versions.yml
"${task.process}":
trimgalore: \$(echo \$(trim_galore --version 2>&1) | sed 's/^.*version //; s/Last.*\$//')
@ -73,6 +75,7 @@ process TRIMGALORE {
$tpc_r2 \\
${prefix}_1.fastq.gz \\
${prefix}_2.fastq.gz
cat <<-END_VERSIONS > versions.yml
"${task.process}":
trimgalore: \$(echo \$(trim_galore --version 2>&1) | sed 's/^.*version //; s/Last.*\$//')

View file

@ -37,6 +37,11 @@ output:
List of input adapter trimmed FastQ files of size 1 and 2 for
single-end and paired-end data, respectively.
pattern: "*.{fq.gz}"
- unpaired:
type: file
description: |
FastQ files containing unpaired reads from read 1 or read 2
pattern: "*unpaired*.fq.gz"
- html:
type: file
description: FastQC report (optional)

View file

@ -2,10 +2,10 @@ process UNTAR {
tag "$archive"
label 'process_low'
conda (params.enable_conda ? "conda-forge::tar=1.34" : null)
conda (params.enable_conda ? "conda-forge::sed=4.7" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://containers.biocontainers.pro/s3/SingImgsRepo/biocontainers/v1.2.0_cv2/biocontainers_v1.2.0_cv2.img' :
'biocontainers/biocontainers:v1.2.0_cv2' }"
'https://depot.galaxyproject.org/singularity/ubuntu:20.04' :
'ubuntu:20.04' }"
input:
tuple val(meta), path(archive)

View file

@ -675,6 +675,10 @@ freebayes:
- modules/freebayes/**
- tests/modules/freebayes/**
gamma:
- modules/gamma/**
- tests/modules/gamma/**
gatk4/applybqsr:
- modules/gatk4/applybqsr/**
- tests/modules/gatk4/applybqsr/**
@ -1591,6 +1595,10 @@ samtools/bam2fq:
- modules/samtools/bam2fq/**
- tests/modules/samtools/bam2fq/**
samtools/bamtocram:
- modules/samtools/bamtocram/**
- tests/modules/samtools/bamtocram/**
samtools/collatefastq:
- modules/samtools/collatefastq/**
- tests/modules/samtools/collatefastq/**

View file

@ -245,8 +245,8 @@ params {
test2_2_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test2_2.fastq.gz"
test2_umi_1_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test2.umi_1.fastq.gz"
test2_umi_2_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test2.umi_2.fastq.gz"
test_rnaseq_1_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test.rnaseq_1.fastq.gz"
test_rnaseq_2_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test.rnaseq_2.fastq.gz"
test_rnaseq_1_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test_rnaseq_1.fastq.gz"
test_rnaseq_2_fastq_gz = "${test_data_dir}/genomics/homo_sapiens/illumina/fastq/test_rnaseq_2.fastq.gz"
test_baserecalibrator_table = "${test_data_dir}/genomics/homo_sapiens/illumina/gatk/test.baserecalibrator.table"
test2_baserecalibrator_table = "${test_data_dir}/genomics/homo_sapiens/illumina/gatk/test2.baserecalibrator.table"
@ -335,6 +335,7 @@ params {
'bacteroides_fragilis' {
'genome' {
genome_fna_gz = "${test_data_dir}/genomics/prokaryotes/bacteroides_fragilis/genome/genome.fna.gz"
genome_gbff_gz = "${test_data_dir}/genomics/prokaryotes/bacteroides_fragilis/genome/genome.gbff.gz"
genome_paf = "${test_data_dir}/genomics/prokaryotes/bacteroides_fragilis/genome/genome.paf"
genome_mapping_potential_arg = "${test_data_dir}/genomics/prokaryotes/bacteroides_fragilis/genome/genome.mapping.potential.ARG"

View file

@ -1,14 +1,17 @@
- name: antismash antismashlitedownloaddatabases test_antismash_antismashlitedownloaddatabases
command: nextflow run tests/modules/antismash/antismashlitedownloaddatabases -entry test_antismash_antismashlitedownloaddatabases -c tests/config/nextflow.config
tags:
- antismash/antismashlitedownloaddatabases
- antismash
- antismash/antismashlitedownloaddatabases
files:
- path: output/antismash/versions.yml
md5sum: e2656c8d2bcc7469eba40eb1ee5c91b3
md5sum: 24859c67023abab99de295d3675a24b6
- path: output/antismash/antismash_db
- path: output/antismash/antismash_db/clusterblast
- path: output/antismash/antismash_db/clustercompare
- path: output/antismash/antismash_db/pfam
- path: output/antismash/antismash_db/resfam
- path: output/antismash/antismash_db/tigrfam
- path: output/antismash/css
- path: output/antismash/detection
- path: output/antismash/modules

View file

@ -0,0 +1,17 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl = 2
include { GAMMA } from '../../../modules/gamma/main.nf'
workflow test_gamma {
input = [
[ id:'test', single_end:false ], // meta map
file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
]
db = [ file(params.test_data['sarscov2']['genome']['transcriptome_fasta'], checkIfExists: true) ]
GAMMA ( input, db )
}

View file

@ -0,0 +1,7 @@
process {
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
ext.args = '--fasta'
}

View file

@ -0,0 +1,13 @@
- name: gamma test_gamma
command: nextflow run tests/modules/gamma -entry test_gamma -c tests/config/nextflow.config
tags:
- gamma
files:
- path: output/gamma/test.fasta
md5sum: df37b48466181311e0a679f3c5878484
- path: output/gamma/test.gamma
md5sum: 3256708fa517a65ed01d99e0e3c762ae
- path: output/gamma/test.psl
md5sum: 162a2757ed3b167ae1e0cdb24213f940
- path: output/gamma/versions.yml
md5sum: 3fefb5b46c94993362243c5f9a472057

View file

@ -6,7 +6,23 @@ include { GATK4_SPLITNCIGARREADS } from '../../../../modules/gatk4/splitncigarre
workflow test_gatk4_splitncigarreads {
input = [ [ id:'test' ], // meta map
[ file(params.test_data['sarscov2']['illumina']['test_paired_end_bam'], checkIfExists: true) ]
file(params.test_data['sarscov2']['illumina']['test_paired_end_bam'], checkIfExists: true),
[],
[]
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
fai = file(params.test_data['sarscov2']['genome']['genome_fasta_fai'], checkIfExists: true)
dict = file(params.test_data['sarscov2']['genome']['genome_dict'], checkIfExists: true)
GATK4_SPLITNCIGARREADS ( input, fasta, fai, dict )
}
workflow test_gatk4_splitncigarreads_intervals {
input = [ [ id:'test' ], // meta map
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam'], checkIfExists: true),
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam_bai'], checkIfExists: true),
file(params.test_data['sarscov2']['genome']['test_bed'], checkIfExists: true)
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
fai = file(params.test_data['sarscov2']['genome']['genome_fasta_fai'], checkIfExists: true)

View file

@ -5,5 +5,14 @@
- gatk4/splitncigarreads
files:
- path: output/gatk4/test.bam
md5sum: ceed15c0bd64ff5c38d3816905933b0b
md5sum: 436d8e31285c6b588bdd1c7f1d07f6f2
- path: output/gatk4/versions.yml
- name: gatk4 splitncigarreads test_gatk4_splitncigarreads_intervals
command: nextflow run tests/modules/gatk4/splitncigarreads -entry test_gatk4_splitncigarreads_intervals -c tests/config/nextflow.config
tags:
- gatk4
- gatk4/splitncigarreads
files:
- path: output/gatk4/test.bam
md5sum: cd56e3225950f519fd47164cca60a0bb
- path: output/gatk4/versions.yml

View file

@ -9,8 +9,11 @@ workflow test_minimap2_align_single_end {
[ file(params.test_data['sarscov2']['illumina']['test_1_fastq_gz'], checkIfExists: true)]
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
bam_format = true
cigar_paf_format = false
cigar_bam = false
MINIMAP2_ALIGN ( input, fasta )
MINIMAP2_ALIGN ( input, fasta, bam_format, cigar_paf_format, cigar_bam)
}
workflow test_minimap2_align_paired_end {
@ -19,6 +22,9 @@ workflow test_minimap2_align_paired_end {
file(params.test_data['sarscov2']['illumina']['test_2_fastq_gz'], checkIfExists: true) ]
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
bam_format = true
cigar_paf_format = false
cigar_bam = false
MINIMAP2_ALIGN ( input, fasta )
MINIMAP2_ALIGN ( input, fasta, bam_format, cigar_paf_format, cigar_bam )
}

View file

@ -1,17 +1,17 @@
- name: minimap2 align single-end
command: nextflow run ./tests/modules/minimap2/align -entry test_minimap2_align_single_end -c ./tests/config/nextflow.config -c ./tests/modules/minimap2/align/nextflow.config
- name: minimap2 align test_minimap2_align_single_end
command: nextflow run tests/modules/minimap2/align -entry test_minimap2_align_single_end -c tests/config/nextflow.config
tags:
- minimap2
- minimap2/align
files:
- path: ./output/minimap2/test.paf
md5sum: 70e8cf299ee3ecd33e629d10c1f588ce
- path: output/minimap2/test.bam
- path: output/minimap2/versions.yml
- name: minimap2 align paired-end
command: nextflow run ./tests/modules/minimap2/align -entry test_minimap2_align_paired_end -c ./tests/config/nextflow.config -c ./tests/modules/minimap2/align/nextflow.config
- name: minimap2 align test_minimap2_align_paired_end
command: nextflow run tests/modules/minimap2/align -entry test_minimap2_align_paired_end -c tests/config/nextflow.config
tags:
- minimap2
- minimap2/align
files:
- path: ./output/minimap2/test.paf
md5sum: 5e7b55a26bf0ea3a2843423d3e0b9a28
- path: output/minimap2/test.bam
- path: output/minimap2/versions.yml

View file

@ -42,7 +42,7 @@
- path: output/rsem/rsem/genome.transcripts.fa
md5sum: 050c521a2719c2ae48267c1e65218f29
- path: output/rsem/rsem/genomeParameters.txt
md5sum: 2fe3a030e1706c3e8cd4df3818e6dd2f
md5sum: df5a456e3242520cc36e0083a6a7d9dd
- path: output/rsem/rsem/sjdbInfo.txt
md5sum: 5690ea9d9f09f7ff85b7fd47bd234903
- path: output/rsem/rsem/sjdbList.fromGTF.out.tab
@ -63,4 +63,4 @@
- path: output/rsem/test.stat/test.theta
md5sum: de2e4490c98cc5383a86ae8225fd0a28
- path: output/rsem/test.transcript.bam
md5sum: 7846491086c478858419667d60f18edd
md5sum: ed681d39f5700ffc74d6321525330d93

View file

@ -0,0 +1,17 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl = 2
include { SAMTOOLS_BAMTOCRAM } from '../../../../modules/samtools/bamtocram/main.nf'
workflow test_samtools_bamtocram {
input = [ [ id:'test', single_end:false ], // meta map
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam'], checkIfExists: true),
file(params.test_data['sarscov2']['illumina']['test_paired_end_sorted_bam_bai'], checkIfExists: true)]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
fai = file(params.test_data['sarscov2']['genome']['genome_fasta_fai'], checkIfExists: true)
SAMTOOLS_BAMTOCRAM ( input, fasta, fai )
}

View file

@ -0,0 +1,5 @@
process {
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
}

View file

@ -0,0 +1,9 @@
- name: samtools bamtocram test_samtools_bamtocram
command: nextflow run ./tests/modules/samtools/bamtocram -entry test_samtools_bamtocram -c ./tests/config/nextflow.config -c ./tests/modules/samtools/bamtocram/nextflow.config
tags:
- samtools/bamtocram
- samtools
files:
- path: output/samtools/test.cram
- path: output/samtools/test.cram.crai
- path: output/samtools/versions.yml

View file

@ -2,7 +2,7 @@
nextflow.enable.dsl = 2
include { STRINGTIE } from '../../../../modules/stringtie/stringtie/main.nf'
include { STRINGTIE_STRINGTIE } from '../../../../modules/stringtie/stringtie/main.nf'
include { STRINGTIE_MERGE } from '../../../../modules/stringtie/merge/main.nf'
/*
@ -15,8 +15,8 @@ workflow test_stringtie_forward_merge {
]
annotation_gtf = file(params.test_data['homo_sapiens']['genome']['genome_gtf'], checkIfExists: true)
STRINGTIE ( input, annotation_gtf )
STRINGTIE
STRINGTIE_STRINGTIE ( input, annotation_gtf )
STRINGTIE_STRINGTIE
.out
.transcript_gtf
.map { it -> it[1] }
@ -35,8 +35,8 @@ workflow test_stringtie_reverse_merge {
]
annotation_gtf = file(params.test_data['homo_sapiens']['genome']['genome_gtf'], checkIfExists: true)
STRINGTIE ( input, annotation_gtf )
STRINGTIE
STRINGTIE_STRINGTIE ( input, annotation_gtf )
STRINGTIE_STRINGTIE
.out
.transcript_gtf
.map { it -> it[1] }

View file

@ -5,7 +5,7 @@
- stringtie/merge
files:
- path: output/stringtie/stringtie.merged.gtf
md5sum: 9fab7049ef2eafdea246fc787d1def40
md5sum: d959eb2fab0db48ded7275e0a2e83c05
- path: output/stringtie/test.ballgown/e2t.ctab
md5sum: 9ae42e056c955a88a883e5e917840d77
- path: output/stringtie/test.ballgown/e_data.ctab
@ -17,11 +17,10 @@
- path: output/stringtie/test.ballgown/t_data.ctab
md5sum: 92a98902784e7406ffe054d2adbabc7c
- path: output/stringtie/test.coverage.gtf
md5sum: d41d8cd98f00b204e9800998ecf8427e
- path: output/stringtie/test.gene.abundance.txt
md5sum: 9708811bcefe0f6384293d6f419f3250
md5sum: 8bcd8e2730ed3337e2730186dbc184f3
- path: output/stringtie/test.transcripts.gtf
md5sum: 0e42709bfe30c2c7f2574ba664f5fa9f
md5sum: a914bd55b68a4b5f607738b17861e362
- name: stringtie merge test_stringtie_reverse_merge
command: nextflow run ./tests/modules/stringtie/merge -entry test_stringtie_reverse_merge -c ./tests/config/nextflow.config -c ./tests/modules/stringtie/merge/nextflow.config
@ -30,7 +29,7 @@
- stringtie/merge
files:
- path: output/stringtie/stringtie.merged.gtf
md5sum: afc461bb3cbc368f268a7a45c1b54497
md5sum: 6da479298d73d5b3216d4e1576a2bdf4
- path: output/stringtie/test.ballgown/e2t.ctab
md5sum: 9ae42e056c955a88a883e5e917840d77
- path: output/stringtie/test.ballgown/e_data.ctab
@ -42,8 +41,7 @@
- path: output/stringtie/test.ballgown/t_data.ctab
md5sum: 92a98902784e7406ffe054d2adbabc7c
- path: output/stringtie/test.coverage.gtf
md5sum: d41d8cd98f00b204e9800998ecf8427e
- path: output/stringtie/test.gene.abundance.txt
md5sum: 94b85145d60ab1b80a7f0f6cf08418b0
md5sum: f289f41b3ba1b9f0aa05d14408f1a5da
- path: output/stringtie/test.transcripts.gtf
md5sum: 3196e3d50fd461aae6408e0a70acae68
md5sum: 9dcdc9577c0fdbb25089eda210267546

View file

@ -2,7 +2,7 @@
nextflow.enable.dsl = 2
include { STRINGTIE } from '../../../../modules/stringtie/stringtie/main.nf'
include { STRINGTIE_STRINGTIE } from '../../../../modules/stringtie/stringtie/main.nf'
//
// Test with forward strandedness
//
@ -13,7 +13,7 @@ workflow test_stringtie_forward {
]
annotation_gtf = file(params.test_data['sarscov2']['genome']['genome_gtf'], checkIfExists: true)
STRINGTIE ( input, annotation_gtf )
STRINGTIE_STRINGTIE ( input, annotation_gtf )
}
//
@ -26,5 +26,5 @@ workflow test_stringtie_reverse {
]
annotation_gtf = file(params.test_data['sarscov2']['genome']['genome_gtf'], checkIfExists: true)
STRINGTIE ( input, annotation_gtf )
STRINGTIE_STRINGTIE ( input, annotation_gtf )
}

View file

@ -8,7 +8,6 @@
- path: ./output/stringtie/test.gene.abundance.txt
md5sum: 7d8bce7f2a922e367cedccae7267c22e
- path: ./output/stringtie/test.coverage.gtf
md5sum: d41d8cd98f00b204e9800998ecf8427e
- path: ./output/stringtie/test.ballgown/e_data.ctab
md5sum: 6b4cf69bc03f3f69890f972a0e8b7471
- path: ./output/stringtie/test.ballgown/i_data.ctab
@ -30,7 +29,6 @@
- path: ./output/stringtie/test.gene.abundance.txt
md5sum: 7385b870b955dae2c2ab78a70cf05cce
- path: ./output/stringtie/test.coverage.gtf
md5sum: d41d8cd98f00b204e9800998ecf8427e
- path: ./output/stringtie/test.ballgown/e_data.ctab
md5sum: 879b6696029d19c4737b562e9d149218
- path: ./output/stringtie/test.ballgown/i_data.ctab