annotate 0.5.0/modules/cat_cat/main.nf @ 1:365849f031fd

"planemo upload"
author kkonganti
date Mon, 05 Jun 2023 18:48:51 -0400
parents
children
rev   line source
kkonganti@1 1 process CAT_CAT {
kkonganti@1 2 tag "$meta.id"
kkonganti@1 3 label 'process_micro'
kkonganti@1 4
kkonganti@1 5 module (params.enable_module ? "${params.swmodulepath}${params.fs}pigz${params.fs}2.7" : null)
kkonganti@1 6 conda (params.enable_conda ? "conda-forge::pigz=2.6" : null)
kkonganti@1 7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
kkonganti@1 8 'https://depot.galaxyproject.org/singularity/pigz:2.3.4' :
kkonganti@1 9 'quay.io/biocontainers/pigz:2.3.4' }"
kkonganti@1 10
kkonganti@1 11 input:
kkonganti@1 12 tuple val(meta), path(files_in)
kkonganti@1 13
kkonganti@1 14 output:
kkonganti@1 15 tuple val(meta), path("*${prefix}"), emit: concatenated_reads
kkonganti@1 16 path "versions.yml" , emit: versions
kkonganti@1 17
kkonganti@1 18 when:
kkonganti@1 19 task.ext.when == null || task.ext.when
kkonganti@1 20
kkonganti@1 21 script:
kkonganti@1 22 def args = task.ext.args ?: ''
kkonganti@1 23 def args2 = task.ext.args2 ?: ''
kkonganti@1 24 def file_list = files_in.collect { it.toString() }
kkonganti@1 25
kkonganti@1 26 // | input | output | command1 | command2 |
kkonganti@1 27 // |-----------|------------|----------|----------|
kkonganti@1 28 // | gzipped | gzipped | cat | |
kkonganti@1 29 // | ungzipped | ungzipped | cat | |
kkonganti@1 30 // | gzipped | ungzipped | zcat | |
kkonganti@1 31 // | ungzipped | gzipped | cat | pigz |
kkonganti@1 32
kkonganti@1 33 // Use input file ending as default
kkonganti@1 34 prefix = task.ext.prefix ? "${meta.id}.${task.ext.prefix}" : "${meta.id}${file_list[0].substring(file_list[0].lastIndexOf('.'))}"
kkonganti@1 35 out_zip = prefix.endsWith('.gz')
kkonganti@1 36 in_zip = file_list[0].endsWith('.gz')
kkonganti@1 37 command1 = (in_zip && !out_zip) ? 'zcat' : 'cat'
kkonganti@1 38 command2 = (!in_zip && out_zip) ? "| pigz -c -p $task.cpus $args2" : ''
kkonganti@1 39 """
kkonganti@1 40 $command1 \\
kkonganti@1 41 $args \\
kkonganti@1 42 ${file_list.join(' ')} \\
kkonganti@1 43 $command2 \\
kkonganti@1 44 > ${prefix}
kkonganti@1 45
kkonganti@1 46 cat <<-END_VERSIONS > versions.yml
kkonganti@1 47 "${task.process}":
kkonganti@1 48 pigz: \$( pigz --version 2>&1 | sed 's/pigz //g' )
kkonganti@1 49 END_VERSIONS
kkonganti@1 50 """
kkonganti@1 51
kkonganti@1 52 stub:
kkonganti@1 53 def file_list = files_in.collect { it.toString() }
kkonganti@1 54 prefix = task.ext.prefix ?: "${meta.id}${file_list[0].substring(file_list[0].lastIndexOf('.'))}"
kkonganti@1 55 """
kkonganti@1 56 touch $prefix
kkonganti@1 57
kkonganti@1 58 cat <<-END_VERSIONS > versions.yml
kkonganti@1 59 "${task.process}":
kkonganti@1 60 pigz: \$( pigz --version 2>&1 | sed 's/pigz //g' )
kkonganti@1 61 END_VERSIONS
kkonganti@1 62
kkonganti@1 63 catver=""
kkonganti@1 64 zver=""
kkonganti@1 65
kkonganti@1 66 if [ "${workflow.containerEngine}" != "null" ]; then
kkonganti@1 67 catver=\$( cat --help 2>&1 | sed -e '1!d; s/ (.*\$//' | cut -f1-2 -d' ' )
kkonganti@1 68 zver=\$( zcat --help 2>&1 | sed -e '1!d; s/ (.*\$//' )
kkonganti@1 69
kkonganti@1 70 else
kkonganti@1 71 catver=\$( cat --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' )
kkonganti@1 72 zver=\$( zcat --version 2>&1 | sed '1!d; s/^.*(gzip) //' )
kkonganti@1 73 fi
kkonganti@1 74
kkonganti@1 75 cat <<-END_VERSIONS >> versions.yml
kkonganti@1 76 cat: \$catver
kkonganti@1 77 zcat: \$zver
kkonganti@1 78 END_VERSIONS
kkonganti@1 79 """
kkonganti@1 80 }