-
Laurent Modolo authoredLaurent Modolo authored
main.nf 2.97 KiB
version = "0.2.8"
container_url = "lbmc/g2gtools:${version}"
process vci_build {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
input:
tuple val(file_id), path(vcf)
tuple val(ref_id), path(fasta)
output:
tuple val(file_id), path("*.vci.gz"), path("*.tbi"), emit: vci
tuple val(file_id), path("*_report.txt"), emit: report
script:
input_vcf = ""
for (vcf_file in vcf) {
input_vcf += " -i ${vcf_file}"
}
"""
g2gtools vcf2vci \
-p ${task.cpus} \
-f ${fasta} \
${input_vcf} \
-s ${file_id} \
-o ${file_id}.vci 2> ${file_id}_g2gtools_vcf2vci_report.txt
"""
}
process incorporate_snp {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
input:
tuple val(file_id), path(vci), path(tbi)
tuple val(ref_id), path(fasta)
output:
tuple val(file_id), path("${file_id}_snp.fasta"), path("${vci}"), path("${tbi}"), emit: fasta
tuple val(file_id), path("*_report.txt"), emit: report
script:
"""
g2gtools patch \
-p ${task.cpus} \
-i ${fasta} \
-c ${vci} \
-o ${file_id}_snp.fasta 2> ${file_id}_g2gtools_path_report.txt
"""
}
process incorporate_indel {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
input:
tuple val(file_id), path(fasta), path(vci), path(tbi)
output:
tuple val(file_id), path("${file_id}_snp_indel.fasta"), path("${vci}"), path("${tbi}"), emit: fasta
tuple val(file_id), path("*_report.txt"), emit: report
script:
"""
g2gtools transform \
-p ${task.cpus} \
-i ${fasta} \
-c ${vci} \
-o ${file_id}_snp_indel.fasta 2> ${file_id}_g2gtools_transform_report.txt
"""
}