mirror of
https://github.com/MillironX/nf-core_modules.git
synced 2024-12-22 19:18:17 +00:00
Merge pull request #22 from Jeremy1805/master
Added the bwa short alignment (bwa mem) module
This commit is contained in:
commit
89cfc271dd
6 changed files with 103 additions and 0 deletions
9
tools/bwa/mem/Dockerfile
Normal file
9
tools/bwa/mem/Dockerfile
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
FROM nfcore/base
|
||||||
|
LABEL authors="Jeremy Guntoro" \
|
||||||
|
description="Docker image containing all requirements for nf-core/modules/bwa/mem module"
|
||||||
|
|
||||||
|
COPY environment.yml /
|
||||||
|
RUN conda env create -f /environment.yml && conda clean -a
|
||||||
|
ENV PATH /opt/conda/envs/nf-core-bwa-mem/bin:$PATH
|
||||||
|
|
||||||
|
|
10
tools/bwa/mem/environment.yml
Normal file
10
tools/bwa/mem/environment.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
# You can use this file to create a conda environment for this pipeline:
|
||||||
|
# conda env create -f environment.yml
|
||||||
|
name: nf-core-bwa-mem
|
||||||
|
channels:
|
||||||
|
- conda-forge
|
||||||
|
- bioconda
|
||||||
|
- defaults
|
||||||
|
dependencies:
|
||||||
|
- bioconda::bwa=0.7.17
|
||||||
|
- bioconda::samtools=1.9
|
27
tools/bwa/mem/main.nf
Normal file
27
tools/bwa/mem/main.nf
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
params.bwa_options = "-M -B 2"
|
||||||
|
params.sequencer = "ILLUMINA"
|
||||||
|
|
||||||
|
process bwa_mem {
|
||||||
|
tag {id}
|
||||||
|
|
||||||
|
publishDir "${params.outdir}/bwa_mem", mode: 'copy'
|
||||||
|
|
||||||
|
//TO-DO: Change container declaration, for now a test container is present in my personal docker acccount
|
||||||
|
container 'jeremy1805/bwa-mem-img'
|
||||||
|
|
||||||
|
input:
|
||||||
|
tuple val(id), path(reads)
|
||||||
|
path genomeindex
|
||||||
|
val indexprefix
|
||||||
|
|
||||||
|
output:
|
||||||
|
tuple path("*.bam"), path("*.bai")
|
||||||
|
|
||||||
|
script:
|
||||||
|
"""
|
||||||
|
bwa mem -t ${task.cpus} -R "@RG\\tID:${id}\\tLB:${id}\\tSM:${id}\\tPL:${params.sequencer}" \\
|
||||||
|
${params.bwa_options} ${indexprefix} ${reads} | samtools sort -@8 -O BAM -o ${id}.bam -
|
||||||
|
|
||||||
|
samtools index ${id}.bam
|
||||||
|
"""
|
||||||
|
}
|
42
tools/bwa/mem/meta.yml
Normal file
42
tools/bwa/mem/meta.yml
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
name: bwa mem
|
||||||
|
description: Performs fastq alignment to a fasta reference using the burrows-wheeler aligner
|
||||||
|
keywords:
|
||||||
|
- mem
|
||||||
|
- bwa
|
||||||
|
- alignment
|
||||||
|
tools:
|
||||||
|
- bwa:
|
||||||
|
description: |
|
||||||
|
BWA is a software package for mapping DNA sequences against a large reference genome, such as the human genome.
|
||||||
|
homepage: http://bio-bwa.sourceforge.net/
|
||||||
|
documentation: http://www.htslib.org/doc/samtools.html
|
||||||
|
arxiv: arXiv:1303.3997
|
||||||
|
input:
|
||||||
|
-
|
||||||
|
- id:
|
||||||
|
type: val
|
||||||
|
description: read/read pair id
|
||||||
|
- reads:
|
||||||
|
type: file
|
||||||
|
description: Input fastq file
|
||||||
|
pattern: *.{fastq,fq}
|
||||||
|
- index:
|
||||||
|
type: file
|
||||||
|
description: bwa indexes file
|
||||||
|
pattern: *.{amb,ann,bwt,pac,sa}
|
||||||
|
- prefix:
|
||||||
|
type: val
|
||||||
|
description: bwa index prefix, equivalent to index file names without extensions. Usually the reference genome file name unless otherwise specified.
|
||||||
|
output:
|
||||||
|
-
|
||||||
|
- bam:
|
||||||
|
type: file
|
||||||
|
description: Output bam file
|
||||||
|
pattern: *.bam
|
||||||
|
- bamindex:
|
||||||
|
type: file
|
||||||
|
description: Output bam index file
|
||||||
|
pattern: *.bai
|
||||||
|
|
||||||
|
authors:
|
||||||
|
- @jeremy1805
|
13
tools/bwa/mem/test/main.nf
Normal file
13
tools/bwa/mem/test/main.nf
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
#!/usr/bin/env nextflow
|
||||||
|
nextflow.preview.dsl = 2
|
||||||
|
include '../../../../nf-core/module_testing/check_process_outputs.nf' params(params)
|
||||||
|
include '../main.nf' params(params)
|
||||||
|
|
||||||
|
reads = '../../../../test-datasets/tools/bwa/mem/reads/*_R{1,2}_001.fastq.gz'
|
||||||
|
index = '../../../../test-datasets/tools/bwa/mem/index/H3N2.{amb,ann,bwt,pac,sa}'
|
||||||
|
prefix = 'H3N2'
|
||||||
|
|
||||||
|
workflow {
|
||||||
|
read_input=Channel.fromFilePairs(reads)
|
||||||
|
bwa_mem(read_input,file(index),prefix)
|
||||||
|
}
|
2
tools/bwa/mem/test/nextflow.config
Normal file
2
tools/bwa/mem/test/nextflow.config
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
docker.enabled = true
|
||||||
|
params.outdir = './results'
|
Loading…
Reference in a new issue