kkonganti@1: process SOURMASH_COMPARE { kkonganti@1: tag "Samples vs Genomes" kkonganti@1: label 'process_micro' kkonganti@1: kkonganti@1: module (params.enable_module ? "${params.swmodulepath}${params.fs}sourmash${params.fs}4.6.1" : null) kkonganti@1: conda (params.enable_conda ? "conda-forge::python bioconda::sourmash=4.6.1" : null) kkonganti@1: container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? kkonganti@1: 'https://depot.galaxyproject.org/singularity/sourmash:4.6.1--hdfd78af_0': kkonganti@1: 'quay.io/biocontainers/sourmash:4.6.1--hdfd78af_0' }" kkonganti@1: kkonganti@1: input: kkonganti@1: path queries kkonganti@1: path accessions kkonganti@1: kkonganti@1: output: kkonganti@1: path "bcs_sourmash_cont_mat.csv" , emit: matrix, optional: true kkonganti@1: path "bcs_sourmash_cont_mat.data.labels.txt", emit: labels, optional: true kkonganti@1: path "versions.yml" , emit: versions kkonganti@1: kkonganti@1: when: kkonganti@1: task.ext.when == null || task.ext.when kkonganti@1: kkonganti@1: script: kkonganti@1: def args = task.ext.args ?: '' kkonganti@1: def sm_compare_mode = ("${params.sourmashcompare_mode.split(',')}" kkonganti@1: ? "--${params.sourmashcompare_mode.split(',').join(' --')}" kkonganti@1: : '') kkonganti@1: def sketch_args = (params.sourmashsketch_mode ?: '') kkonganti@1: sketch_args += (params.sourmashsketch_singleton ? ' --singleton ' : '') kkonganti@1: sketch_args += (params.sourmashsketch_p ? " -p ${params.sourmashsketch_p} " : '') kkonganti@1: """ kkonganti@1: kkonganti@1: gen_otf_genome.py \\ kkonganti@1: -gd "${params.tuspy_gd}" \\ kkonganti@1: -gds "${params.tuspy_gds}" \\ kkonganti@1: -txt $accessions kkonganti@1: kkonganti@1: if [ ! -e "CATTED_GENOMES_FAILED.txt" ]; then kkonganti@1: kkonganti@1: sourmash sketch \\ kkonganti@1: $sketch_args \\ kkonganti@1: --output OTF.db.sig \\ kkonganti@1: CATTED_GENOMES_scaffolded_genomic.fna.gz kkonganti@1: kkonganti@1: sourmash compare \\ kkonganti@1: $sm_compare_mode \\ kkonganti@1: --${params.sourmashsketch_mode} \\ kkonganti@1: -k ${params.sourmashgather_k} \\ kkonganti@1: --csv bcs_sourmash_cont_mat.csv \\ kkonganti@1: --output bcs_sourmash_cont_mat.data \\ kkonganti@1: ${queries.collect().join(' ')} \\ kkonganti@1: OTF.db.sig kkonganti@1: fi kkonganti@1: kkonganti@1: cat <<-END_VERSIONS > versions.yml kkonganti@1: "${task.process}": kkonganti@1: sourmash: \$(echo \$(sourmash --version 2>&1) | sed 's/^sourmash //' ) kkonganti@1: python: \$( python --version | sed 's/Python //g' ) kkonganti@1: bash: \$( bash --version 2>&1 | sed '1!d; s/^.*version //; s/ (.*\$//' ) kkonganti@1: END_VERSIONS kkonganti@1: """ kkonganti@1: }