diff --git a/conf/modules/align_MT.config b/conf/modules/align_MT.config
index e88f7e88..5ffec1c0 100644
--- a/conf/modules/align_MT.config
+++ b/conf/modules/align_MT.config
@@ -21,7 +21,7 @@ process {
withName: '.*ALIGN_MT:BWAMEM2_MEM_MT' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes")) }
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted" }
}
}
@@ -29,7 +29,7 @@ process {
withName: '.*ALIGN_MT:BWA_MEM_MT' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes")) }
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted" }
}
}
@@ -37,13 +37,13 @@ process {
withName: '.*ALIGN_MT:SENTIEON_BWAMEM_MT' {
ext.args = { "-M -K 10000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes"))}
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted" }
}
}
withName: '.*ALIGN_MT:GATK4_MERGEBAMALIGNMENT_MT' {
ext.args = '--TMP_DIR . --CREATE_INDEX true --MAX_GAPS -1 --SORT_ORDER queryname --INCLUDE_SECONDARY_ALIGNMENTS false --PAIRED_RUN false --VALIDATION_STRINGENCY LENIENT'
- ext.prefix = { "${meta.id}_merged" }
+ ext.prefix = { "${meta.id}_sorted_merged" }
}
withName: '.*ALIGN_MT:PICARD_ADDORREPLACEREADGROUPS_MT' {
@@ -59,11 +59,11 @@ process {
withName: '.*ALIGN_MT:PICARD_MARKDUPLICATES_MT' {
ext.args = '--TMP_DIR . --VALIDATION_STRINGENCY LENIENT --CREATE_INDEX true'
- ext.prefix = { "${meta.id}_markduplicates" }
+ ext.prefix = { "${meta.id}_sorted_merged_md" }
}
withName: '.*ALIGN_MT:SAMTOOLS_SORT_MT' {
- ext.prefix = { "${meta.id}_sorted" }
+ ext.prefix = { "${meta.id}_sorted_merged_md_sorted" }
}
}
@@ -78,7 +78,7 @@ process {
withName: '.*ALIGN_MT_SHIFT:BWAMEM2_MEM_MT' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes")) }
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted_shifted" }
}
}
@@ -86,22 +86,21 @@ process {
withName: '.*ALIGN_MT_SHIFT:SENTIEON_BWAMEM_MT' {
ext.args = { "-M -K 10000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes"))}
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted_shifted" }
}
}
-
if (params.aligner.equals("bwa")) {
withName: '.*ALIGN_MT_SHIFT:BWA_MEM_MT' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
ext.when = { !(params.analysis_type.equals("wes")) }
- ext.prefix = { "${meta.id}.sorted" }
+ ext.prefix = { "${meta.id}_sorted_shifted" }
}
}
withName: '.*ALIGN_MT_SHIFT:GATK4_MERGEBAMALIGNMENT_MT' {
ext.args = '--TMP_DIR . --CREATE_INDEX true --MAX_GAPS -1 --SORT_ORDER queryname --INCLUDE_SECONDARY_ALIGNMENTS false --PAIRED_RUN false --VALIDATION_STRINGENCY LENIENT'
- ext.prefix = { "${meta.id}_merged_shifted" }
+ ext.prefix = { "${meta.id}_sorted_merged_shifted" }
}
withName: '.*ALIGN_MT_SHIFT:PICARD_ADDORREPLACEREADGROUPS_MT' {
@@ -117,11 +116,11 @@ process {
withName: '.*ALIGN_MT_SHIFT:PICARD_MARKDUPLICATES_MT' {
ext.args = '--TMP_DIR . --VALIDATION_STRINGENCY LENIENT --CREATE_INDEX true'
- ext.prefix = { "${meta.id}_markduplicates_shifted" }
+ ext.prefix = { "${meta.id}_sorted_merged_md_shifted" }
}
withName: '.*ALIGN_MT_SHIFT:SAMTOOLS_SORT_MT' {
- ext.prefix = { "${meta.id}_sorted_shifted" }
+ ext.prefix = { "${meta.id}_sorted_merged_md_sorted_shifted" }
}
}
diff --git a/conf/modules/align_bwa_bwamem2.config b/conf/modules/align_bwa_bwamem2.config
index 15453e0e..e91360fc 100644
--- a/conf/modules/align_bwa_bwamem2.config
+++ b/conf/modules/align_bwa_bwamem2.config
@@ -21,14 +21,14 @@ process {
withName: '.*ALIGN:ALIGN_BWA_BWAMEM2:BWAMEM2_MEM' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
- ext.prefix = { "${meta.id}.sorted" }
- ext.when = { params.aligner.equals("bwamem2")}
+ ext.prefix = { "${meta.id}_sorted" }
+ ext.when = { params.aligner.equals("bwamem2") }
}
withName: '.*ALIGN:ALIGN_BWA_BWAMEM2:BWA_MEM' {
ext.args = { "-M -K 100000000 -R ${meta.read_group}" }
- ext.prefix = { "${meta.id}.sorted" }
- ext.when = { params.aligner.equals("bwa")}
+ ext.prefix = { "${meta.id}_sorted" }
+ ext.when = { params.aligner.equals("bwa") }
}
withName: '.*ALIGN:ALIGN_BWA_BWAMEM2:SAMTOOLS_STATS' {
diff --git a/conf/modules/annotate_genome_snvs.config b/conf/modules/annotate_genome_snvs.config
index bf748350..768aeee3 100644
--- a/conf/modules/annotate_genome_snvs.config
+++ b/conf/modules/annotate_genome_snvs.config
@@ -25,26 +25,29 @@ process {
withName: '.*ANNOTATE_GENOME_SNVS:RHOCALL_ANNOTATE' {
ext.args = { "--v14 " }
- ext.prefix = { "${meta.id}_rohann" }
+ }
+
+ withName: '.*ANNOTATE_GENOME_SNVS:ZIP_TABIX_ROHCALL' {
+ ext.prefix = { "${input.simpleName}" }
}
withName: '.*ANNOTATE_GENOME_SNVS:VCFANNO' {
- ext.prefix = { "${meta.id}_rohann_vcfanno" }
+ ext.prefix = { "${vcf.simpleName}_vcfanno" }
}
withName: '.*ANNOTATE_GENOME_SNVS:UPD_SITES' {
- ext.prefix = { "${meta.id}_rohann_vcfanno_upd_sites" }
+ ext.prefix = { "${vcf.simpleName}_upd_sites" }
ext.args = {"--af-tag GNOMADAF --proband ${meta.upd_child} --mother ${meta.mother} --father ${meta.father} sites"}
}
withName: '.*ANNOTATE_GENOME_SNVS:UPD_REGIONS' {
- ext.prefix = { "${meta.id}_rohann_vcfanno_upd_regions" }
+ ext.prefix = { "${vcf.simpleName}_upd_regions" }
ext.args = {"--af-tag GNOMADAF --proband ${meta.upd_child} --mother ${meta.mother} --father ${meta.father} regions --min-size 5 --min-sites 1"}
ext.when = { !(workflow.profile.tokenize(',').intersect(['test', 'test_one_sample']).size() >= 1) || workflow.stubRun }
}
withName: '.*ANNOTATE_GENOME_SNVS:CHROMOGRAPH_SITES' {
- ext.prefix = { "${meta7.id}_rohann_vcfanno_upd_sites_chromograph" }
+ ext.prefix = { "${sites.simpleName}_chromograph" }
ext.args = { "--euploid" }
tag = {"${meta7.id}"}
publishDir = [
@@ -55,7 +58,7 @@ process {
}
withName: '.*ANNOTATE_GENOME_SNVS:CHROMOGRAPH_REGIONS' {
- ext.prefix = { "${meta6.id}_rohann_vcfanno_upd_regions_chromograph" }
+ ext.prefix = { "${regions.simpleName}_chromograph" }
ext.args = { '--euploid' }
ext.when = { !(workflow.profile.tokenize(',').intersect(['test', 'test_one_sample', 'test_sentieon']).size() >= 1) || workflow.stubRun }
tag = {"${meta6.id}"}
@@ -66,17 +69,21 @@ process {
]
}
+ withName: '.*ANNOTATE_GENOME_SNVS:ZIP_TABIX_VCFANNO' {
+ ext.prefix = { "${input.simpleName}" }
+ }
+
withName: '.*ANNOTATE_GENOME_SNVS:BCFTOOLS_VIEW' {
- ext.prefix = { "${meta.id}_rohann_vcfanno_filter" }
+ ext.prefix = { "${vcf.simpleName}_filter" }
ext.args = { '--output-type z --exclude "INFO/GNOMADAF > 0.70 | INFO/GNOMADAF_popmax > 0.70" ' }
}
withName: '.*ANNOTATE_GENOME_SNVS:GATK4_SELECTVARIANTS' {
- ext.prefix = { "${meta.id}_${intervals.simpleName}" }
+ ext.prefix = { "${vcf.simpleName}_${intervals.simpleName}" }
}
withName: '.*ANNOTATE_GENOME_SNVS:ENSEMBLVEP_SNV' {
- ext.prefix = { "${vcf.simpleName}_rohann_vcfanno_filter_vep" }
+ ext.prefix = { "${meta.prefix}_vep_${meta.scatterid}" }
ext.args = { [
'--dir_plugins vep_cache/Plugins',
'--plugin LoFtool,LoFtool_scores.txt',
@@ -94,7 +101,7 @@ process {
}
withName: '.*ANNOTATE_GENOME_SNVS:BCFTOOLS_CONCAT' {
- ext.prefix = { "${meta.id}_rohann_vcfanno_filter_vep" }
+ ext.prefix = { "${meta.prefix}_vep" }
publishDir = [
path: { "${params.outdir}/annotate_snv/genome" },
mode: params.publish_dir_mode,
diff --git a/conf/modules/annotate_mt_snvs.config b/conf/modules/annotate_mt_snvs.config
index 45260fb2..3e25c36f 100644
--- a/conf/modules/annotate_mt_snvs.config
+++ b/conf/modules/annotate_mt_snvs.config
@@ -16,49 +16,52 @@
//
process {
- if (!params.skip_mt_annotation) {
- withName: '.*ANNOTATE_MT_SNVS:ENSEMBLVEP_MT' {
- ext.args = { [
- '--dir_plugins vep_cache/Plugins',
- '--plugin LoFtool,LoFtool_scores.txt',
- '--plugin pLI,pLI_values.txt',
- '--plugin SpliceAI,snv=spliceai_21_scores_raw_snv_-v1.3-.vcf.gz,indel=spliceai_21_scores_raw_snv_-v1.3-.vcf.gz',
- '--distance 0',
- '--buffer_size 20000',
- '--format vcf --fork 4 --max_sv_size 248956422',
- '--appris --biotype --cache --canonical --ccds --compress_output bgzip',
- '--domains --exclude_predicted --force_overwrite',
- '--hgvs --humdiv --no_progress --numbers',
- '--merged --polyphen p --protein --offline --regulatory --sift p --symbol --tsl --vcf',
- '--uniprot'
- ].join(' ') }
- }
+ withName: '.*ANNOTATE_MT_SNVS:ENSEMBLVEP_MT' {
+ ext.args = { [
+ '--dir_plugins vep_cache/Plugins',
+ '--plugin LoFtool,LoFtool_scores.txt',
+ '--plugin pLI,pLI_values.txt',
+ '--plugin SpliceAI,snv=spliceai_21_scores_raw_snv_-v1.3-.vcf.gz,indel=spliceai_21_scores_raw_snv_-v1.3-.vcf.gz',
+ '--distance 0',
+ '--buffer_size 20000',
+ '--format vcf --fork 4 --max_sv_size 248956422',
+ '--appris --biotype --cache --canonical --ccds --compress_output bgzip',
+ '--domains --exclude_predicted --force_overwrite',
+ '--hgvs --humdiv --no_progress --numbers',
+ '--merged --polyphen p --protein --offline --regulatory --sift p --symbol --tsl --vcf',
+ '--uniprot'
+ ].join(' ') }
+ ext.prefix = { "${meta.prefix}" }
+ }
- withName: '.*ANNOTATE_MT_SNVS:ZIP_TABIX_HMTNOTE' {
- ext.prefix = { "${meta.id}_vep_vcfanno_hmtnote_mt" }
- publishDir = [
- path: { "${params.outdir}/annotate_snv/mitochondria" },
- mode: params.publish_dir_mode,
- pattern: "*{vcf.gz,vcf.gz.tbi}",
- saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
- ]
- }
+ withName: '.*ANNOTATE_MT_SNVS:VCFANNO_MT' {
+ ext.prefix = { "${meta.prefix}" }
+ }
- withName: '.*ANNOTATE_MT_SNVS:HMTNOTE_ANNOTATE' {
- ext.prefix = { "${meta.id}_vep_vcfanno_hmtnote_mt" }
- ext.args = '--offline'
- publishDir = [
- enabled: false
- ]
- }
+ withName: '.*ANNOTATE_MT_SNVS:ZIP_TABIX_HMTNOTE' {
+ ext.prefix = { "${meta.prefix}" }
+ publishDir = [
+ path: { "${params.outdir}/annotate_snv/mitochondria" },
+ mode: params.publish_dir_mode,
+ pattern: "*{vcf.gz,vcf.gz.tbi}",
+ saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
+ ]
+ }
+
+ withName: '.*ANNOTATE_MT_SNVS:HMTNOTE_ANNOTATE' {
+ ext.prefix = { "${meta.prefix}_uncompressed" }
+ ext.args = '--offline'
+ publishDir = [
+ enabled: false
+ ]
+ }
- withName: '.*ANNOTATE_MT_SNVS:HAPLOGREP2_CLASSIFY_MT' {
- ext.prefix = { "${meta.id}_haplogrep" }
- publishDir = [
- path: { "${params.outdir}/annotate_snv/mitochondria" },
- mode: params.publish_dir_mode,
- saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
- ]
- }
+ withName: '.*ANNOTATE_MT_SNVS:HAPLOGREP2_CLASSIFY_MT' {
+ ext.prefix = { "${meta.prefix}_haplogrep" }
+ publishDir = [
+ path: { "${params.outdir}/annotate_snv/mitochondria" },
+ mode: params.publish_dir_mode,
+ saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
+ ]
}
}
diff --git a/conf/modules/annotate_structural_variants.config b/conf/modules/annotate_structural_variants.config
index 62faeda7..f8666a82 100644
--- a/conf/modules/annotate_structural_variants.config
+++ b/conf/modules/annotate_structural_variants.config
@@ -35,7 +35,7 @@ process {
}
withName: '.*ANNOTATE_STRUCTURAL_VARIANTS:PICARD_SORTVCF' {
- ext.prefix = { "${meta.id}_sortvcf" }
+ ext.prefix = { "${meta.id}_svdbquery" }
}
withName: '.*ANNOTATE_STRUCTURAL_VARIANTS:BCFTOOLS_VIEW' {
diff --git a/conf/modules/call_snv.config b/conf/modules/call_snv.config
index 92eda8cf..1170d515 100644
--- a/conf/modules/call_snv.config
+++ b/conf/modules/call_snv.config
@@ -21,7 +21,7 @@ process {
withName: '.*CALL_SNV:GATK4_SELECTVARIANTS' {
ext.args = { "--exclude-intervals ${params.mito_name}" }
- ext.prefix = { "${meta.id}_nomito" }
+ ext.prefix = { "${meta.id}_snv" }
publishDir = [
path: { "${params.outdir}/call_snv/genome" },
mode: params.publish_dir_mode,
diff --git a/conf/modules/call_structural_variants.config b/conf/modules/call_structural_variants.config
index 3a59868d..f8da7840 100644
--- a/conf/modules/call_structural_variants.config
+++ b/conf/modules/call_structural_variants.config
@@ -24,6 +24,7 @@ process {
}
withName: '.*CALL_STRUCTURAL_VARIANTS:SVDB_MERGE' {
+ ext.prefix = {"${meta.id}_sv"}
ext.args = '--pass_only --same_order'
publishDir = [
path: { "${params.outdir}/call_sv/genome" },
diff --git a/conf/modules/call_sv_MT.config b/conf/modules/call_sv_MT.config
index b7022829..05f98e84 100644
--- a/conf/modules/call_sv_MT.config
+++ b/conf/modules/call_sv_MT.config
@@ -19,6 +19,7 @@ process {
withName: '.*CALL_SV_MT:MT_DELETION' {
ext.args = '-s --insert-size 16000'
+ ext.prefix = { "${meta.id}_mitochondria_deletions" }
publishDir = [
path: { "${params.outdir}/call_sv/mitochondria" },
mode: params.publish_dir_mode,
diff --git a/conf/modules/call_sv_germlinecnvcaller.config b/conf/modules/call_sv_germlinecnvcaller.config
index 6685dc6c..5f85c0f9 100644
--- a/conf/modules/call_sv_germlinecnvcaller.config
+++ b/conf/modules/call_sv_germlinecnvcaller.config
@@ -39,7 +39,7 @@ process {
}
withName: '.*CALL_STRUCTURAL_VARIANTS:CALL_SV_GERMLINECNVCALLER:BCFTOOLS_VIEW' {
- ext.prefix = { "${meta.id}_gatkcnv_segments_reffiltered" }
+ ext.prefix = { "${meta.id}_gatkcnv_segments_refiltered" }
ext.args = { '--output-type z --exclude "N_ALT = 0" ' }
}
}
diff --git a/conf/modules/generate_clinical_set.config b/conf/modules/generate_clinical_set.config
index 794e284b..4ab31579 100644
--- a/conf/modules/generate_clinical_set.config
+++ b/conf/modules/generate_clinical_set.config
@@ -27,11 +27,6 @@ process {
withName: '.*:GENERATE_CLINICAL_SET_SNV:TABIX_BGZIP' {
ext.when = !params.skip_vep_filter
ext.prefix = { "${meta.id}_snv_${meta.set}" }
- publishDir = [
- path: { "${params.outdir}/rank_and_filter" },
- mode: params.publish_dir_mode,
- saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
- ]
}
}
@@ -40,18 +35,13 @@ process {
process {
withName: '.*:GENERATE_CLINICAL_SET_SV:ENSEMBLVEP_FILTERVEP' {
ext.when = !params.skip_vep_filter
- ext.prefix = { "${meta.id}_sv_${meta.set}" }
+ ext.prefix = { "${input.simpleName}_sv_${meta.set}" }
ext.args = { "--filter \"HGNC_ID in ${meta.hgnc_ids.join(',')}\"" }
}
withName: '.*:GENERATE_CLINICAL_SET_SV:TABIX_BGZIP' {
ext.when = !params.skip_vep_filter
ext.prefix = { "${meta.id}_sv_${meta.set}" }
- publishDir = [
- path: { "${params.outdir}/rank_and_filter" },
- mode: params.publish_dir_mode,
- saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
- ]
}
}
@@ -67,10 +57,5 @@ process {
withName: '.*:GENERATE_CLINICAL_SET_MT:TABIX_BGZIP' {
ext.when = !params.skip_vep_filter
ext.prefix = { "${meta.id}_mt_${meta.set}" }
- publishDir = [
- path: { "${params.outdir}/rank_and_filter" },
- mode: params.publish_dir_mode,
- saveAs: { filename -> filename.equals('versions.yml') ? null : filename }
- ]
}
}
diff --git a/conf/modules/qc_bam.config b/conf/modules/qc_bam.config
index 93b0f2db..d57670c7 100644
--- a/conf/modules/qc_bam.config
+++ b/conf/modules/qc_bam.config
@@ -48,6 +48,7 @@ process {
withName: '.*QC_BAM:UCSC_WIGTOBIGWIG' {
ext.args = '-clip'
+ ext.prefix = { "${meta.id}_tidditcov" }
}
withName: '.*QC_BAM:CHROMOGRAPH_COV' {
diff --git a/conf/modules/rank_variants.config b/conf/modules/rank_variants.config
index b65d55ab..a17dee05 100644
--- a/conf/modules/rank_variants.config
+++ b/conf/modules/rank_variants.config
@@ -31,8 +31,8 @@ process {
].join(' ') }
}
- withName: '.*RANK_VARIANTS_SNV:GENMOD_MODELS' {
- ext.prefix = { "${meta.id}_snv_genmod_models_${meta.set}" }
+ withName: '.*RANK_VARIANTS_SV:GENMOD_MODELS' {
+ ext.prefix = { "${meta.id}_sv_genmod_models_${meta.set}" }
ext.args = " --whole_gene "
}
diff --git a/docs/output.md b/docs/output.md
index 448322da..281ac7dd 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -266,8 +266,8 @@ Results generated by MultiQC collate pipeline QC from supported tools e.g. FastQ
Output files
- `call_snv/genome`
- - `_nomito.selectvariants.vcf.gz`: normalized vcf file containing no MT variants.
- - `_nomito.selectvariants.vcf.gz.tbi`: index of the vcf file containing no MT variants.
+ - `_snv.vcf.gz`: normalized vcf file containing no MT variants.
+ - `_snv.vcf.gz.tbi`: index of the vcf file containing no MT variants.
@@ -279,8 +279,8 @@ The pipeline performs variant calling using [Sentieon DNAscope](https://support.
Output files
- `call_snv/genome`
- - `_nomito.selectvariants.vcf.gz`: normalized vcf file containing no MT variants.
- - `_nomito.selectvariants.vcf.gz.tbi`: index of the vcf file containing no MT variants.
+ - `_snv.vcf.gz`: normalized vcf file containing no MT variants.
+ - `_snv.vcf.gz.tbi`: index of the vcf file containing no MT variants.
@@ -382,8 +382,8 @@ Based on VEP annotations, custom scripts used by the pipeline further annotate e
Output files
- `annotate_snv/genome`
- - `_rohann_vcfanno_filter_vep.vcf.gz`: file containing bcftools roh, vcfanno, and vep annotations.
- - `_rohann_vcfanno_filter_vep.vcf.gz.tbi`: index of the file containing bcftools roh, vcfanno, and vep annotations.
+ - `_rhocall_vcfanno_filter_.vcf.gz`: file containing bcftools roh, vcfanno, cadd and vep annotations.
+ - `_rhocall_vcfanno_filter_.vcf.gz.tbi`: index of the file containing bcftools roh, vcfanno, cadd and vep annotations.
@@ -456,15 +456,15 @@ The pipeline for mitochondrial variant discovery, using Mutect2, uses a high sen
[MT deletion script](https://github.com/dnil/mitosign/blob/master/run_mt_del_check.sh) lists the fraction of mitochondrially aligning read pairs (per 1000) that appear discordant, as defined by an insert size of more than 1.2 kb (and less than 15 kb due to the circular nature of the genome) using samtools.
- `call_sv/mitochondria`
- - `.txt`: file containing deletions.
+ - `_mitochondria_deletions.txt`: file containing deletions.
##### eKLIPse
[eKLIPse](https://github.com/dooguypapua/eKLIPse) allows the detection and quantification of large mtDNA rearrangements.
- `call_sv/mitochondria`
- - `eKLIPse_deletions.csv`: file containing all predicted deletions.
- - `eKLIPse_genes.csv`: file summarizing cumulated deletions per mtDNA gene.
+ - `eKLIPse__deletions.csv`: file containing all predicted deletions.
+ - `eKLIPse__genes.csv`: file summarizing cumulated deletions per mtDNA gene.
- `eKLIPse_.png`: circos plot.
#### Annotation:
@@ -477,7 +477,7 @@ The pipeline for mitochondrial variant discovery, using Mutect2, uses a high sen
Output files
- `annotate_snv/mitochondria`
- - `_haplogrep.txt`: file containing haplogroup information.
+ - `_mitochondria_haplogrep.txt`: file containing haplogroup information.
@@ -503,8 +503,8 @@ We recommend using vcfanno to annotate SNVs with precomputed CADD scores (files
Output files
- `annotate_snv/mitochondria`
- - `_vep_vcfanno_hmtnote_mt.vcf.gz`: file containing mitochondrial annotations.
- - `_vep_vcfanno_hmtnote_mt.vcf.gz.tbi`: index of the file containing mitochondrial annotations.
+ - `_mitochondria_vep_vcfanno_hmtnote.vcf.gz`: file containing mitochondrial annotations.
+ - `_mitochondria_vep_vcfanno_hmtnote.vcf.gz.tbi`: index of the file containing mitochondrial annotations.
diff --git a/modules.json b/modules.json
index 1076a6d6..cf999956 100644
--- a/modules.json
+++ b/modules.json
@@ -113,7 +113,7 @@
},
"eklipse": {
"branch": "master",
- "git_sha": "0031772de29283811deb989a5b42d0310d35ec22",
+ "git_sha": "7f265c2db4b1394c9303a3eb51e25d8447767347",
"installed_by": ["modules"]
},
"ensemblvep/filtervep": {
@@ -225,7 +225,7 @@
},
"gatk4/selectvariants": {
"branch": "master",
- "git_sha": "3f5420aa22e00bd030a2556dfdffc9e164ec0ec5",
+ "git_sha": "47cd015ac64f0294ae65a589693604127132a686",
"installed_by": ["modules"]
},
"gatk4/shiftfasta": {
@@ -281,7 +281,8 @@
"hmtnote/annotate": {
"branch": "master",
"git_sha": "3f5420aa22e00bd030a2556dfdffc9e164ec0ec5",
- "installed_by": ["modules"]
+ "installed_by": ["modules"],
+ "patch": "modules/nf-core/hmtnote/annotate/hmtnote-annotate.diff"
},
"manta/germline": {
"branch": "master",
@@ -455,7 +456,7 @@
},
"svdb/merge": {
"branch": "master",
- "git_sha": "3f5420aa22e00bd030a2556dfdffc9e164ec0ec5",
+ "git_sha": "d9c95c45db561814ff6c46a0c0574581e81beaae",
"installed_by": ["modules"]
},
"svdb/query": {
diff --git a/modules/local/mt_deletion_script.nf b/modules/local/mt_deletion_script.nf
index 02d55876..f363b949 100644
--- a/modules/local/mt_deletion_script.nf
+++ b/modules/local/mt_deletion_script.nf
@@ -38,7 +38,7 @@ process MT_DELETION {
stub:
def prefix = task.ext.prefix ?: "${meta.id}"
"""
- touch ${prefix}_mt_del.txt
+ touch ${prefix}.txt
cat <<-END_VERSIONS > versions.yml
"${task.process}":
diff --git a/modules/nf-core/eklipse/main.nf b/modules/nf-core/eklipse/main.nf
index b50df3c1..98c57789 100644
--- a/modules/nf-core/eklipse/main.nf
+++ b/modules/nf-core/eklipse/main.nf
@@ -33,8 +33,8 @@ process EKLIPSE {
-in infile.txt \\
$args \\
-ref $ref_gb
- mv eKLIPse_*/eKLIPse_deletions.csv eKLIPse_deletions.csv
- mv eKLIPse_*/eKLIPse_genes.csv eKLIPse_genes.csv
+ mv eKLIPse_*/eKLIPse_deletions.csv eKLIPse_${prefix}_deletions.csv
+ mv eKLIPse_*/eKLIPse_genes.csv eKLIPse_${prefix}_genes.csv
mv eKLIPse_*/eKLIPse_${prefix}.png eKLIPse_${prefix}.png
cat <<-END_VERSIONS > versions.yml
@@ -47,8 +47,8 @@ process EKLIPSE {
def prefix = task.ext.prefix ?: "${meta.id}"
def VERSION = "1.8"
"""
- touch eKLIPse_deletions.csv
- touch eKLIPse_genes.csv
+ touch eKLIPse_${prefix}_deletions.csv
+ touch eKLIPse_${prefix}_genes.csv
touch eKLIPse_${prefix}.png
cat <<-END_VERSIONS > versions.yml
diff --git a/modules/nf-core/eklipse/tests/main.nf.test.snap b/modules/nf-core/eklipse/tests/main.nf.test.snap
index 87d79dac..5969a1da 100644
--- a/modules/nf-core/eklipse/tests/main.nf.test.snap
+++ b/modules/nf-core/eklipse/tests/main.nf.test.snap
@@ -1,11 +1,11 @@
{
- "eklipse": {
+ "homo_sapiens [bam]": {
"content": [
- "eKLIPse_deletions.csv:md5,8bcfdb8f3e8a63dcd211c2a53b6ca0a7",
- "eKLIPse_genes.csv:md5,ec1a1f31d018ca66a46d8a2d17bc8d18",
+ "eKLIPse_test_deletions.csv:md5,8bcfdb8f3e8a63dcd211c2a53b6ca0a7",
+ "eKLIPse_test_genes.csv:md5,ec1a1f31d018ca66a46d8a2d17bc8d18",
"eKLIPse_test.png:md5,d1ea2a548bc4f8d321b1128a61ea8b0a",
"versions.yml:md5,8e6ebaa9abf72ced91c1f56acd10f131"
],
- "timestamp": "2023-11-22T18:02:08.245264064"
+ "timestamp": "2024-02-11T14:55:25.205208435"
}
}
\ No newline at end of file
diff --git a/modules/nf-core/gatk4/selectvariants/main.nf b/modules/nf-core/gatk4/selectvariants/main.nf
index f81a019b..139d7835 100644
--- a/modules/nf-core/gatk4/selectvariants/main.nf
+++ b/modules/nf-core/gatk4/selectvariants/main.nf
@@ -11,9 +11,9 @@ process GATK4_SELECTVARIANTS {
tuple val(meta), path(vcf), path(vcf_idx), path (intervals)
output:
- tuple val(meta), path("*.selectvariants.vcf.gz") , emit: vcf
- tuple val(meta), path("*.selectvariants.vcf.gz.tbi") , emit: tbi
- path "versions.yml" , emit: versions
+ tuple val(meta), path("*.vcf.gz") , emit: vcf
+ tuple val(meta), path("*.vcf.gz.tbi") , emit: tbi
+ path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
@@ -33,7 +33,7 @@ process GATK4_SELECTVARIANTS {
gatk --java-options "-Xmx${avail_mem}M -XX:-UsePerfData" \\
SelectVariants \\
--variant $vcf \\
- --output ${prefix}.selectvariants.vcf.gz \\
+ --output ${prefix}.vcf.gz \\
$interval \\
--tmp-dir . \\
$args
@@ -47,8 +47,8 @@ process GATK4_SELECTVARIANTS {
stub:
def prefix = task.ext.prefix ?: "${meta.id}"
"""
- touch ${prefix}.selectvariants.vcf.gz
- touch ${prefix}.selectvariants.vcf.gz.tbi
+ touch ${prefix}.vcf.gz
+ touch ${prefix}.vcf.gz.tbi
cat <<-END_VERSIONS > versions.yml
"${task.process}":
diff --git a/modules/nf-core/gatk4/selectvariants/tests/main.nf.test b/modules/nf-core/gatk4/selectvariants/tests/main.nf.test
new file mode 100644
index 00000000..d1622dad
--- /dev/null
+++ b/modules/nf-core/gatk4/selectvariants/tests/main.nf.test
@@ -0,0 +1,64 @@
+nextflow_process {
+
+ name "Test Process GATK4_SELECTVARIANTS"
+ script "modules/nf-core/gatk4/selectvariants/main.nf"
+ process "GATK4_SELECTVARIANTS"
+ tag "modules"
+ tag "modules_nfcore"
+ tag "gatk4"
+ tag "gatk4/selectvariants"
+
+ test("selectvariants - vcf input") {
+
+ when {
+ params {
+ // define parameters here. Example:
+ // outdir = "tests/results"
+ }
+ process {
+ """
+ input[0] = [
+ [ id:'test' ], // meta map
+ file(params.test_data['homo_sapiens']['illumina']['test_genome_vcf'], checkIfExists: true),
+ file(params.test_data['homo_sapiens']['illumina']['test_genome_vcf_idx'], checkIfExists: true),
+ file(params.test_data['homo_sapiens']['genome']['genome_interval_list'], checkIfExists: true)
+ ]
+ """
+ }
+ }
+
+ then {
+ assertAll(
+ {assert process.success},
+ {assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.2")}
+ )
+ }
+
+
+ }
+
+ test("selectvariants - gz input") {
+
+ when {
+ process {
+ """
+ input[0] = [
+ [ id:'test' ], // meta map
+ file(params.test_data['homo_sapiens']['illumina']['test_genome_vcf_gz'], checkIfExists: true),
+ file(params.test_data['homo_sapiens']['illumina']['test_genome_vcf_gz_tbi'], checkIfExists: true),
+ []
+ ]
+ """
+ }
+ }
+
+ then {
+ assertAll(
+ {assert process.success},
+ {assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.2")}
+ )
+ }
+
+ }
+
+}
diff --git a/modules/nf-core/gatk4/selectvariants/tests/tags.yml b/modules/nf-core/gatk4/selectvariants/tests/tags.yml
new file mode 100644
index 00000000..d9fb50f7
--- /dev/null
+++ b/modules/nf-core/gatk4/selectvariants/tests/tags.yml
@@ -0,0 +1,2 @@
+gatk4/selectvariants:
+ - "modules/nf-core/gatk4/selectvariants/**"
diff --git a/modules/nf-core/hmtnote/annotate/hmtnote-annotate.diff b/modules/nf-core/hmtnote/annotate/hmtnote-annotate.diff
new file mode 100644
index 00000000..3723cf2f
--- /dev/null
+++ b/modules/nf-core/hmtnote/annotate/hmtnote-annotate.diff
@@ -0,0 +1,42 @@
+Changes in module 'nf-core/hmtnote/annotate'
+--- modules/nf-core/hmtnote/annotate/main.nf
++++ modules/nf-core/hmtnote/annotate/main.nf
+@@ -11,7 +11,7 @@
+ tuple val(meta), path(vcf)
+
+ output:
+- tuple val(meta), path("*_annotated.vcf"), emit: vcf
++ tuple val(meta), path("${prefix}.vcf"), emit: vcf
+ path "versions.yml" , emit: versions
+
+ when:
+@@ -19,13 +19,13 @@
+
+ script:
+ def args = task.ext.args ?: ''
+- def prefix = task.ext.prefix ?: "${meta.id}"
++ prefix = task.ext.prefix ?: "${meta.id}"
+
+ """
+ hmtnote \\
+ annotate \\
+ $vcf \\
+- ${prefix}_annotated.vcf \\
++ ${prefix}.vcf \\
+ $args
+
+ cat <<-END_VERSIONS > versions.yml
+@@ -34,9 +34,9 @@
+ END_VERSIONS
+ """
+ stub:
+- def prefix = task.ext.prefix ?: "${meta.id}"
++ prefix = task.ext.prefix ?: "${meta.id}"
+ """
+- touch ${prefix}_annotated.vcf
++ touch ${prefix}.vcf
+ cat <<-END_VERSIONS > versions.yml
+ "${task.process}":
+ hmtnote: \$(echo \$(hmtnote --version 2>&1) | sed 's/^.*hmtnote, version //; s/Using.*\$//' ))
+
+************************************************************
diff --git a/modules/nf-core/hmtnote/annotate/main.nf b/modules/nf-core/hmtnote/annotate/main.nf
index 2fca73f4..8d727df3 100644
--- a/modules/nf-core/hmtnote/annotate/main.nf
+++ b/modules/nf-core/hmtnote/annotate/main.nf
@@ -11,7 +11,7 @@ process HMTNOTE_ANNOTATE {
tuple val(meta), path(vcf)
output:
- tuple val(meta), path("*_annotated.vcf"), emit: vcf
+ tuple val(meta), path("${prefix}.vcf"), emit: vcf
path "versions.yml" , emit: versions
when:
@@ -19,13 +19,13 @@ process HMTNOTE_ANNOTATE {
script:
def args = task.ext.args ?: ''
- def prefix = task.ext.prefix ?: "${meta.id}"
+ prefix = task.ext.prefix ?: "${meta.id}"
"""
hmtnote \\
annotate \\
$vcf \\
- ${prefix}_annotated.vcf \\
+ ${prefix}.vcf \\
$args
cat <<-END_VERSIONS > versions.yml
@@ -34,9 +34,9 @@ process HMTNOTE_ANNOTATE {
END_VERSIONS
"""
stub:
- def prefix = task.ext.prefix ?: "${meta.id}"
+ prefix = task.ext.prefix ?: "${meta.id}"
"""
- touch ${prefix}_annotated.vcf
+ touch ${prefix}.vcf
cat <<-END_VERSIONS > versions.yml
"${task.process}":
hmtnote: \$(echo \$(hmtnote --version 2>&1) | sed 's/^.*hmtnote, version //; s/Using.*\$//' ))
diff --git a/modules/nf-core/svdb/merge/main.nf b/modules/nf-core/svdb/merge/main.nf
index 0d9967dd..827d11b3 100644
--- a/modules/nf-core/svdb/merge/main.nf
+++ b/modules/nf-core/svdb/merge/main.nf
@@ -11,7 +11,7 @@ process SVDB_MERGE {
val (priority)
output:
- tuple val(meta), path("*_sv_merge.vcf.gz"), emit: vcf
+ tuple val(meta), path("*.vcf.gz"), emit: vcf
path "versions.yml" , emit: versions
when:
@@ -35,8 +35,8 @@ process SVDB_MERGE {
$args \\
$prio \\
--vcf $input \\
- > ${prefix}_sv_merge.vcf
- bgzip ${prefix}_sv_merge.vcf
+ > ${prefix}.vcf
+ bgzip ${prefix}.vcf
cat <<-END_VERSIONS > versions.yml
"${task.process}":
@@ -48,7 +48,7 @@ process SVDB_MERGE {
stub:
def prefix = task.ext.prefix ?: "${meta.id}"
"""
- touch ${prefix}_sv_merge.vcf.gz
+ touch ${prefix}.vcf.gz
cat <<-END_VERSIONS > versions.yml
"${task.process}":
diff --git a/modules/nf-core/svdb/merge/tests/main.nf.test b/modules/nf-core/svdb/merge/tests/main.nf.test
new file mode 100644
index 00000000..f06b5998
--- /dev/null
+++ b/modules/nf-core/svdb/merge/tests/main.nf.test
@@ -0,0 +1,57 @@
+nextflow_process {
+
+ name "Test Process SVDB_MERGE"
+ script "modules/nf-core/svdb/merge/main.nf"
+ process "SVDB_MERGE"
+ tag "modules"
+ tag "modules_nfcore"
+ tag "svdb"
+ tag "svdb/merge"
+
+ test("test_svdb_merge") {
+
+ when {
+ process {
+ """
+ input[0] = [[ id:'test' ], // meta map
+ [file(params.test_data['sarscov2']['illumina']['test_vcf'], checkIfExists: true),
+ file(params.test_data['sarscov2']['illumina']['test2_vcf'], checkIfExists: true) ]
+ ]
+ input[1] = [ 'tiddit', 'cnvnator']
+ """
+ }
+ }
+
+ then {
+ assertAll (
+ { assert process.success },
+ { assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.1") }
+ )
+ }
+
+ }
+
+ test("test_svdb_merge_noprio") {
+
+ when {
+ process {
+ """
+ input[0] = [[ id:'test' ], // meta map
+ [file(params.test_data['sarscov2']['illumina']['test_vcf'], checkIfExists: true),
+ file(params.test_data['sarscov2']['illumina']['test2_vcf'], checkIfExists: true) ]
+ ]
+ input[1] = []
+ """
+ }
+ }
+
+ then {
+ assertAll (
+ { assert process.success },
+ { assert path(process.out.vcf.get(0).get(1)).linesGzip.contains("##fileformat=VCFv4.1") }
+ )
+ }
+
+ }
+
+}
diff --git a/modules/nf-core/svdb/merge/tests/tags.yml b/modules/nf-core/svdb/merge/tests/tags.yml
new file mode 100644
index 00000000..8501d907
--- /dev/null
+++ b/modules/nf-core/svdb/merge/tests/tags.yml
@@ -0,0 +1,2 @@
+svdb/merge:
+ - modules/nf-core/svdb/merge/**
diff --git a/subworkflows/local/annotate_genome_snvs.nf b/subworkflows/local/annotate_genome_snvs.nf
index fe59303d..e2f10a1e 100644
--- a/subworkflows/local/annotate_genome_snvs.nf
+++ b/subworkflows/local/annotate_genome_snvs.nf
@@ -93,7 +93,7 @@ workflow ANNOTATE_GENOME_SNVS {
.combine(ch_split_intervals)
.map {
meta, vcf, tbi, interval ->
- return [meta + [scatterid:interval.baseName], vcf, tbi, interval]
+ return [meta + [scatterid:interval.baseName, prefix: vcf.simpleName], vcf, tbi, interval]
}
.set { ch_vcf_scatter_in }
@@ -118,7 +118,7 @@ workflow ANNOTATE_GENOME_SNVS {
selvar: it[2].equals(null)
return [it[0], it[1]]
cadd: !(it[2].equals(null))
- return [it[0], it[2]]
+ return [it[0] + [prefix: it[0].prefix + "_cadd"], it[2]]
}
.set { ch_for_mix }
@@ -156,9 +156,13 @@ workflow ANNOTATE_GENOME_SNVS {
BCFTOOLS_CONCAT (ch_concat_in)
- TABIX_BCFTOOLS_CONCAT (BCFTOOLS_CONCAT.out.vcf)
+ BCFTOOLS_CONCAT.out.vcf
+ .map { meta, vcf -> [meta - meta.subMap('prefix'), vcf] }
+ .set { ch_concat_out }
- ch_vep_ann = BCFTOOLS_CONCAT.out.vcf
+ TABIX_BCFTOOLS_CONCAT (ch_concat_out)
+
+ ch_vep_ann = ch_concat_out
ch_vep_index = TABIX_BCFTOOLS_CONCAT.out.tbi
ch_versions = ch_versions.mix(BCFTOOLS_ROH.out.versions)
diff --git a/subworkflows/local/annotate_mt_snvs.nf b/subworkflows/local/annotate_mt_snvs.nf
index e7b8ae6a..5cbf261f 100644
--- a/subworkflows/local/annotate_mt_snvs.nf
+++ b/subworkflows/local/annotate_mt_snvs.nf
@@ -46,9 +46,9 @@ workflow ANNOTATE_MT_SNVS {
.join(ch_cadd_vcf, remainder: true) // If CADD is not run then the third element in this channel will be `null`
.branch { it -> // If CADD is run, then "it" will be [[meta],selvar.vcf,cadd.vcf], else [[meta],selvar.vcf,null]
merged: it[2].equals(null)
- return [it[0], it[1]]
+ return [it[0]+ [prefix: it[1].simpleName + "_vep"], it[1]]
cadd: !(it[2].equals(null))
- return [it[0], it[2]]
+ return [it[0] + [prefix: it[1].simpleName + "_cadd_vep"], it[2]]
}
.set { ch_for_mix }
@@ -73,15 +73,18 @@ workflow ANNOTATE_MT_SNVS {
TABIX_TABIX_MT(ENSEMBLVEP_MT.out.vcf)
ENSEMBLVEP_MT.out.vcf
.join(TABIX_TABIX_MT.out.tbi, failOnMismatch:true, failOnDuplicate:true)
- .map { meta, vcf, tbi -> return [meta, vcf, tbi, []]}
+ .map { meta, vcf, tbi -> return [meta + [prefix: meta.prefix + "_vcfanno"], vcf, tbi, []]}
.set { ch_in_vcfanno }
- VCFANNO_MT(ch_in_vcfanno, ch_vcfanno_toml, [], ch_vcfanno_resources)
+ VCFANNO_MT(ch_in_vcfanno, ch_vcfanno_toml, [], ch_vcfanno_resources).vcf
+ .map { meta, vcf -> return [meta + [prefix: meta.prefix + "_hmtnote"], vcf]}
+ .set {ch_hmtnote_in}
// HMTNOTE ANNOTATE
- HMTNOTE_ANNOTATE(VCFANNO_MT.out.vcf)
- HMTNOTE_ANNOTATE.out.vcf.map{meta, vcf ->
- return [meta, WorkflowRaredisease.replaceSpacesInInfoColumn(vcf, vcf.parent.toString(), vcf.baseName)]
+ HMTNOTE_ANNOTATE(ch_hmtnote_in)
+ HMTNOTE_ANNOTATE.out.vcf
+ .map{meta, vcf ->
+ return [meta, WorkflowRaredisease.replaceSpacesInInfoColumn(vcf, vcf.parent.toString(), vcf.baseName)]
}
.set { ch_hmtnote_reformatted }
ZIP_TABIX_HMTNOTE(ch_hmtnote_reformatted)
diff --git a/subworkflows/local/annotate_structural_variants.nf b/subworkflows/local/annotate_structural_variants.nf
index d2d42027..db73f5a1 100644
--- a/subworkflows/local/annotate_structural_variants.nf
+++ b/subworkflows/local/annotate_structural_variants.nf
@@ -95,7 +95,9 @@ workflow ANNOTATE_STRUCTURAL_VARIANTS {
PICARD_SORTVCF(ch_querypedbed_out, ch_genome_fasta, ch_genome_dictionary)
- PICARD_SORTVCF.out.vcf.map { meta, vcf -> return [meta,vcf,[]] }.set { ch_sortvcf }
+ PICARD_SORTVCF.out.vcf
+ .map { meta, vcf -> return [meta,vcf,[]] }
+ .set { ch_sortvcf }
BCFTOOLS_VIEW(ch_sortvcf, [], [], [])
.vcf