Merge branch 'master' into meryl_unionsum

This commit is contained in:
Mahesh Binzer-Panchal 2022-05-09 16:20:01 +02:00 committed by GitHub
commit 705ad7c3a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 89 additions and 49 deletions

View file

@ -1,5 +1,4 @@
//There is a -L option to only output alignments in interval, might be an option for exons/panel data?
process SAMTOOLS_BAMTOCRAM {
process SAMTOOLS_CONVERT {
tag "$meta.id"
label 'process_medium'
@ -14,8 +13,8 @@ process SAMTOOLS_BAMTOCRAM {
path fai
output:
tuple val(meta), path("*.cram"), path("*.crai"), emit: cram_crai
path "versions.yml" , emit: versions
tuple val(meta), path("*.{cram,bam}"), path("*.{crai,bai}") , emit: alignment_index
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
@ -23,9 +22,17 @@ process SAMTOOLS_BAMTOCRAM {
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
def output_extension = input.getExtension() == "bam" ? "cram" : "bam"
"""
samtools view --threads ${task.cpus} --reference ${fasta} -C $args $input > ${prefix}.cram
samtools index -@${task.cpus} ${prefix}.cram
samtools view \\
--threads ${task.cpus} \\
--reference ${fasta} \\
$args \\
$input \\
-o ${prefix}.${output_extension}
samtools index -@${task.cpus} ${prefix}.${output_extension}
cat <<-END_VERSIONS > versions.yml
"${task.process}":

View file

@ -1,5 +1,5 @@
name: samtools_bamtocram
description: filter/convert and then index CRAM file
name: samtools_convert
description: convert and then index CRAM -> BAM or BAM -> CRAM file
keywords:
- view
- index
@ -23,12 +23,12 @@ input:
e.g. [ id:'test', single_end:false ]
- input:
type: file
description: BAM/SAM file
pattern: "*.{bam,sam}"
description: BAM/CRAM file
pattern: "*.{bam,cram}"
- index:
type: file
description: BAM/SAM index file
pattern: "*.{bai,sai}"
description: BAM/CRAM index file
pattern: "*.{bai,crai}"
- fasta:
type: file
description: Reference file to create the CRAM file
@ -39,10 +39,10 @@ output:
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- cram_crai:
- alignment_index:
type: file
description: filtered/converted CRAM file + index
pattern: "*{.cram,.crai}"
description: filtered/converted BAM/CRAM file + index
pattern: "*{.bam/cram,.bai/crai}"
- version:
type: file
description: File containing software version

View file

@ -1639,9 +1639,9 @@ samtools/bam2fq:
- modules/samtools/bam2fq/**
- tests/modules/samtools/bam2fq/**
samtools/bamtocram:
- modules/samtools/bamtocram/**
- tests/modules/samtools/bamtocram/**
samtools/convert:
- modules/samtools/convert/**
- tests/modules/samtools/convert/**
samtools/collatefastq:
- modules/samtools/collatefastq/**

View file

@ -1,17 +0,0 @@
#!/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

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

View file

@ -1,9 +0,0 @@
- 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

@ -0,0 +1,31 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl = 2
include { SAMTOOLS_CONVERT as SAMTOOLS_BAMTOCRAM } from '../../../../modules/samtools/convert/main.nf'
include { SAMTOOLS_CONVERT as SAMTOOLS_CRAMTOBAM } from '../../../../modules/samtools/convert/main.nf'
workflow test_samtools_convert_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 )
}
workflow test_samtools_convert_cramtobam {
input = [ [ id:'test', single_end:false ], // meta map
file(params.test_data['homo_sapiens']['illumina']['test_paired_end_recalibrated_sorted_cram'], checkIfExists: true),
file(params.test_data['homo_sapiens']['illumina']['test_paired_end_recalibrated_sorted_cram_crai'], checkIfExists: true)
]
fasta = file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true)
fai = file(params.test_data['homo_sapiens']['genome']['genome_fasta_fai'], checkIfExists: true)
SAMTOOLS_CRAMTOBAM ( input, fasta, fai )
}

View file

@ -0,0 +1,12 @@
process {
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
withName:SAMTOOLS_BAMTOCRAM{
ext.args = "-C"
}
withName:SAMTOOLS_CRAMTOBAM{
ext.args = "-b"
}
}

View file

@ -0,0 +1,21 @@
- name: samtools convert test_samtools_convert_bamtocram
command: nextflow run tests/modules/samtools/convert -entry test_samtools_convert_bamtocram -c tests/config/nextflow.config
tags:
- samtools
- samtools/convert
files:
- path: output/samtools/test.cram
- path: output/samtools/test.cram.crai
- path: output/samtools/versions.yml
- name: samtools convert test_samtools_convert_cramtobam
command: nextflow run tests/modules/samtools/convert -entry test_samtools_convert_cramtobam -c tests/config/nextflow.config
tags:
- samtools
- samtools/convert
files:
- path: output/samtools/test.bam
md5sum: c262b6dc15f9b480bdb47d6d018b4b56
- path: output/samtools/test.bam.bai
md5sum: 6e8f5034f728401bfa841c8e70c62463
- path: output/samtools/versions.yml