add stub and the option to compress output for vep (#2111)

* add stub

* create tab and json files

* add option to get compressed outputs
This commit is contained in:
Ramprasad Neethiraj 2022-09-28 14:34:41 +02:00 committed by GitHub
parent e9bc33485e
commit 3d7ce93630
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 85 additions and 6 deletions

View file

@ -17,11 +17,14 @@ process ENSEMBLVEP {
path extra_files
output:
tuple val(meta), path("*.ann.vcf") , optional:true, emit: vcf
tuple val(meta), path("*.ann.tab") , optional:true, emit: tab
tuple val(meta), path("*.ann.json") , optional:true, emit: json
path "*.summary.html" , emit: report
path "versions.yml" , emit: versions
tuple val(meta), path("*.ann.vcf") , optional:true, emit: vcf
tuple val(meta), path("*.ann.tab") , optional:true, emit: tab
tuple val(meta), path("*.ann.json") , optional:true, emit: json
tuple val(meta), path("*.ann.vcf.gz") , optional:true, emit: vcf_gz
tuple val(meta), path("*.ann.tab.gz") , optional:true, emit: tab_gz
tuple val(meta), path("*.ann.json.gz") , optional:true, emit: json_gz
path "*.summary.html" , emit: report
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
@ -29,6 +32,7 @@ process ENSEMBLVEP {
script:
def args = task.ext.args ?: ''
def file_extension = args.contains("--vcf") ? 'vcf' : args.contains("--json")? 'json' : args.contains("--tab")? 'tab' : 'vcf'
def compress_out = args.contains("--compress_output") ? '.gz' : ''
def prefix = task.ext.prefix ?: "${meta.id}"
def dir_cache = cache ? "\${PWD}/${cache}" : "/.vep"
def reference = fasta ? "--fasta $fasta" : ""
@ -36,7 +40,7 @@ process ENSEMBLVEP {
"""
vep \\
-i $vcf \\
-o ${prefix}.ann.${file_extension} \\
-o ${prefix}.ann.${file_extension}${compress_out} \\
$args \\
$reference \\
--assembly $genome \\
@ -48,6 +52,23 @@ process ENSEMBLVEP {
--stats_file ${prefix}.summary.html \\
cat <<-END_VERSIONS > versions.yml
"${task.process}":
ensemblvep: \$( echo \$(vep --help 2>&1) | sed 's/^.*Versions:.*ensembl-vep : //;s/ .*\$//')
END_VERSIONS
"""
stub:
def prefix = task.ext.prefix ?: "${meta.id}"
"""
touch ${prefix}.ann.vcf
touch ${prefix}.ann.tab
touch ${prefix}.ann.json
touch ${prefix}.ann.vcf.gz
touch ${prefix}.ann.tab.gz
touch ${prefix}.ann.json.gz
touch ${prefix}.summary.html
cat <<-END_VERSIONS > versions.yml
"${task.process}":
ensemblvep: \$( echo \$(vep --help 2>&1) | sed 's/^.*Versions:.*ensembl-vep : //;s/ .*\$//')

View file

@ -7,6 +7,8 @@ include { ENSEMBLVEP } from '../../../modules/ensemblvep/main.nf'
include { ENSEMBLVEP as ENSEMBLVEP_JSON } from '../../../modules/ensemblvep/main.nf'
include { ENSEMBLVEP as ENSEMBLVEP_TAB } from '../../../modules/ensemblvep/main.nf'
include { ENSEMBLVEP as ENSEMBLVEP_VCF } from '../../../modules/ensemblvep/main.nf'
include { ENSEMBLVEP as ENSEMBLVEP_VCF_BGZIP } from '../../../modules/ensemblvep/main.nf'
include { ENSEMBLVEP as ENSEMBLVEP_VCF_GZIP } from '../../../modules/ensemblvep/main.nf'
workflow test_ensemblvep_fasta_json {
input = [
@ -41,6 +43,28 @@ workflow test_ensemblvep_fasta_vcf {
ENSEMBLVEP_VCF ( input, "WBcel235", "caenorhabditis_elegans", "106", [], fasta, [] )
}
workflow test_ensemblvep_fasta_vcf_bgzip {
input = [
[ id:'test' ], // meta map
file(params.test_data['sarscov2']['illumina']['test_vcf'], checkIfExists: true)
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
ENSEMBLVEP_VCF_BGZIP ( input, "WBcel235", "caenorhabditis_elegans", "106", [], fasta, [] )
}
workflow test_ensemblvep_fasta_vcf_gzip {
input = [
[ id:'test' ], // meta map
file(params.test_data['sarscov2']['illumina']['test_vcf'], checkIfExists: true)
]
fasta = file(params.test_data['sarscov2']['genome']['genome_fasta'], checkIfExists: true)
ENSEMBLVEP_VCF_GZIP ( input, "WBcel235", "caenorhabditis_elegans", "106", [], fasta, [] )
}
workflow test_ensemblvep_fasta {
input = [
[ id:'test' ], // meta map

View file

@ -20,4 +20,14 @@ process {
container = 'nfcore/vep:106.1.WBcel235'
ext.args = '--vcf'
}
withName: ENSEMBLVEP_VCF_BGZIP {
container = 'nfcore/vep:106.1.WBcel235'
ext.args = '--vcf --compress_output bgzip'
}
withName: ENSEMBLVEP_VCF_GZIP {
container = 'nfcore/vep:106.1.WBcel235'
ext.args = '--vcf --compress_output gzip'
}
}

View file

@ -22,6 +22,22 @@
- path: output/ensemblvep/test.ann.vcf
- path: output/ensemblvep/test.summary.html
- name: ensemblvep test_ensemblvep_fasta_vcf_bgzip
command: nextflow run ./tests/modules/ensemblvep -entry test_ensemblvep_fasta_vcf_bgzip -c ./tests/config/nextflow.config -c ./tests/modules/ensemblvep/nextflow.config
tags:
- ensemblvep
files:
- path: output/ensemblvep/test.ann.vcf.gz
- path: output/ensemblvep/test.summary.html
- name: ensemblvep test_ensemblvep_fasta_vcf_gzip
command: nextflow run ./tests/modules/ensemblvep -entry test_ensemblvep_fasta_vcf_gzip -c ./tests/config/nextflow.config -c ./tests/modules/ensemblvep/nextflow.config
tags:
- ensemblvep
files:
- path: output/ensemblvep/test.ann.vcf.gz
- path: output/ensemblvep/test.summary.html
- name: ensemblvep test_ensemblvep_fasta
command: nextflow run ./tests/modules/ensemblvep -entry test_ensemblvep_fasta -c ./tests/config/nextflow.config -c ./tests/modules/ensemblvep/nextflow.config
tags:
@ -37,3 +53,11 @@
files:
- path: output/ensemblvep/test.ann.vcf
- path: output/ensemblvep/test.summary.html
- name: ensemblvep test_ensemblvep_fasta_vcf_stub
command: nextflow run ./tests/modules/ensemblvep -entry test_ensemblvep_fasta_vcf -c ./tests/config/nextflow.config -c ./tests/modules/ensemblvep/nextflow.config -stub
tags:
- ensemblvep
files:
- path: output/ensemblvep/test.ann.vcf
- path: output/ensemblvep/test.summary.html