From 10bb80743a738a9dd18326f4eae36fef686f6f48 Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Fri, 29 Jan 2021 16:06:14 +0100 Subject: [PATCH 01/13] started adding quast modules --- software/quast/quast_noref/functions.nf | 59 ++++++++++++++++++++++++ software/quast/quast_noref/main.nf | 41 +++++++++++++++++ software/quast/quast_noref/meta.yml | 54 ++++++++++++++++++++++ software/quast/quast_ref/functions.nf | 59 ++++++++++++++++++++++++ software/quast/quast_ref/main.nf | 46 +++++++++++++++++++ software/quast/quast_ref/meta.yml | 61 +++++++++++++++++++++++++ tests/software/quast/main.nf | 20 ++++++++ tests/software/quast/test.yml | 0 8 files changed, 340 insertions(+) create mode 100644 software/quast/quast_noref/functions.nf create mode 100644 software/quast/quast_noref/main.nf create mode 100644 software/quast/quast_noref/meta.yml create mode 100644 software/quast/quast_ref/functions.nf create mode 100644 software/quast/quast_ref/main.nf create mode 100644 software/quast/quast_ref/meta.yml create mode 100644 tests/software/quast/main.nf create mode 100644 tests/software/quast/test.yml diff --git a/software/quast/quast_noref/functions.nf b/software/quast/quast_noref/functions.nf new file mode 100644 index 00000000..d25eea86 --- /dev/null +++ b/software/quast/quast_noref/functions.nf @@ -0,0 +1,59 @@ +/* + * ----------------------------------------------------- + * Utility functions used in nf-core DSL2 module files + * ----------------------------------------------------- + */ + +/* + * Extract name of software tool from process name using $task.process + */ +def getSoftwareName(task_process) { + return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase() +} + +/* + * Function to initialise default values and to generate a Groovy Map of available options for nf-core modules + */ +def initOptions(Map args) { + def Map options = [:] + options.args = args.args ?: '' + options.args2 = args.args2 ?: '' + options.publish_by_id = args.publish_by_id ?: false + options.publish_dir = args.publish_dir ?: '' + options.publish_files = args.publish_files + options.suffix = args.suffix ?: '' + return options +} + +/* + * Tidy up and join elements of a list to return a path string + */ +def getPathFromList(path_list) { + def paths = path_list.findAll { item -> !item?.trim().isEmpty() } // Remove empty entries + paths = paths.collect { it.trim().replaceAll("^[/]+|[/]+\$", "") } // Trim whitespace and trailing slashes + return paths.join('/') +} + +/* + * Function to save/publish module results + */ +def saveFiles(Map args) { + if (!args.filename.endsWith('.version.txt')) { + def ioptions = initOptions(args.options) + def path_list = [ ioptions.publish_dir ?: args.publish_dir ] + if (ioptions.publish_by_id) { + path_list.add(args.publish_id) + } + if (ioptions.publish_files instanceof Map) { + for (ext in ioptions.publish_files) { + if (args.filename.endsWith(ext.key)) { + def ext_list = path_list.collect() + ext_list.add(ext.value) + return "${getPathFromList(ext_list)}/$args.filename" + } + } + } else if (ioptions.publish_files == null) { + return "${getPathFromList(path_list)}/$args.filename" + } + } +} diff --git a/software/quast/quast_noref/main.nf b/software/quast/quast_noref/main.nf new file mode 100644 index 00000000..2ad9ac79 --- /dev/null +++ b/software/quast/quast_noref/main.nf @@ -0,0 +1,41 @@ +// Import generic module functions +include { initOptions; saveFiles; getSoftwareName } from './functions' + +params.options = [:] +def options = initOptions(params.options) + +process QUAST { + tag "$fasta" + label 'process_medium' + publishDir "${params.outdir}", + mode: params.publish_dir_mode, + saveAs: { filename -> saveFiles(filename:filename, options:params.options, publish_dir:getSoftwareName(task.process), publish_id:'') } + + conda (params.enable_conda ? 'bioconda::quast=5.0.2' : null) + if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) { + container 'https://depot.galaxyproject.org/singularity/quast:5.0.2--py37pl526hb5aa323_2' + } else { + container 'quay.io/biocontainers/quast:5.0.2--py37pl526hb5aa323_2' + } + + input: + path consensus + + output: + path "${prefix}" , emit: results + path '*.tsv' , emit: tsv + path '*.version.txt', emit: version + + script: + def software = getSoftwareName(task.process) + prefix = options.suffix ?: software + """ + quast.py \\ + --output-dir $prefix \\ + --threads $task.cpus \\ + $options.args \\ + $consensus + ln -s ${prefix}/report.tsv + echo \$(quast.py --version 2>&1) | sed 's/^.*QUAST v//; s/ .*\$//' > ${software}.version.txt + """ +} diff --git a/software/quast/quast_noref/meta.yml b/software/quast/quast_noref/meta.yml new file mode 100644 index 00000000..9b46bf42 --- /dev/null +++ b/software/quast/quast_noref/meta.yml @@ -0,0 +1,54 @@ +name: quast +description: Quality Assessment Tool for Genome Assemblies +keywords: + - quast + - assembly + - quality +tools: + - star: + description: | + QUAST calculate quality metrics for genome assemblies + homepage: http://bioinf.spbau.ru/quast + doi: +params: + - outdir: + type: string + description: | + The pipeline's output directory. By default, the module will + output files into `$params.outdir/` + - publish_dir_mode: + type: string + description: | + Value for the Nextflow `publishDir` mode parameter. + Available: symlink, rellink, link, copy, copyNoFollow, move. + - enable_conda: + type: boolean + description: | + Run the module with Conda using the software specified + via the `conda` directive + - singularity_pull_docker_container: + type: boolean + description: | + Instead of directly downloading Singularity images for use with Singularity, + force the workflow to pull and convert Docker containers instead. + +input: + - consensus: + type: map + description: | + Groovy Map containing sample information + +output: + - report: + type: file + description: The lineage report + pattern: "{prefix}.lineage_report.csv" + + - version: + type: file + description: File containing software version + pattern: "*.{version.txt}" + +authors: + - "@drpatelh" + - "@kevinmenden" diff --git a/software/quast/quast_ref/functions.nf b/software/quast/quast_ref/functions.nf new file mode 100644 index 00000000..d25eea86 --- /dev/null +++ b/software/quast/quast_ref/functions.nf @@ -0,0 +1,59 @@ +/* + * ----------------------------------------------------- + * Utility functions used in nf-core DSL2 module files + * ----------------------------------------------------- + */ + +/* + * Extract name of software tool from process name using $task.process + */ +def getSoftwareName(task_process) { + return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase() +} + +/* + * Function to initialise default values and to generate a Groovy Map of available options for nf-core modules + */ +def initOptions(Map args) { + def Map options = [:] + options.args = args.args ?: '' + options.args2 = args.args2 ?: '' + options.publish_by_id = args.publish_by_id ?: false + options.publish_dir = args.publish_dir ?: '' + options.publish_files = args.publish_files + options.suffix = args.suffix ?: '' + return options +} + +/* + * Tidy up and join elements of a list to return a path string + */ +def getPathFromList(path_list) { + def paths = path_list.findAll { item -> !item?.trim().isEmpty() } // Remove empty entries + paths = paths.collect { it.trim().replaceAll("^[/]+|[/]+\$", "") } // Trim whitespace and trailing slashes + return paths.join('/') +} + +/* + * Function to save/publish module results + */ +def saveFiles(Map args) { + if (!args.filename.endsWith('.version.txt')) { + def ioptions = initOptions(args.options) + def path_list = [ ioptions.publish_dir ?: args.publish_dir ] + if (ioptions.publish_by_id) { + path_list.add(args.publish_id) + } + if (ioptions.publish_files instanceof Map) { + for (ext in ioptions.publish_files) { + if (args.filename.endsWith(ext.key)) { + def ext_list = path_list.collect() + ext_list.add(ext.value) + return "${getPathFromList(ext_list)}/$args.filename" + } + } + } else if (ioptions.publish_files == null) { + return "${getPathFromList(path_list)}/$args.filename" + } + } +} diff --git a/software/quast/quast_ref/main.nf b/software/quast/quast_ref/main.nf new file mode 100644 index 00000000..0a811445 --- /dev/null +++ b/software/quast/quast_ref/main.nf @@ -0,0 +1,46 @@ +// Import generic module functions +include { initOptions; saveFiles; getSoftwareName } from './functions' + +params.options = [:] +def options = initOptions(params.options) + +process QUAST { + tag "$fasta" + label 'process_medium' + publishDir "${params.outdir}", + mode: params.publish_dir_mode, + saveAs: { filename -> saveFiles(filename:filename, options:params.options, publish_dir:getSoftwareName(task.process), publish_id:'') } + + conda (params.enable_conda ? 'bioconda::quast=5.0.2' : null) + if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) { + container 'https://depot.galaxyproject.org/singularity/quast:5.0.2--py37pl526hb5aa323_2' + } else { + container 'quay.io/biocontainers/quast:5.0.2--py37pl526hb5aa323_2' + } + + input: + path consensus + path fasta + path gff + + output: + path "${prefix}" , emit: results + path '*.tsv' , emit: tsv + path '*.version.txt', emit: version + + script: + def software = getSoftwareName(task.process) + prefix = options.suffix ?: software + def features = params.gff ? "--features $gff" : '' + """ + quast.py \\ + --output-dir $prefix \\ + -r $fasta \\ + $features \\ + --threads $task.cpus \\ + $options.args \\ + ${consensus.join(' ')} + ln -s ${prefix}/report.tsv + echo \$(quast.py --version 2>&1) | sed 's/^.*QUAST v//; s/ .*\$//' > ${software}.version.txt + """ +} diff --git a/software/quast/quast_ref/meta.yml b/software/quast/quast_ref/meta.yml new file mode 100644 index 00000000..a1ca27b3 --- /dev/null +++ b/software/quast/quast_ref/meta.yml @@ -0,0 +1,61 @@ +name: quast +description: Quality Assessment Tool for Genome Assemblies +keywords: + - quast + - assembly + - quality +tools: + - star: + description: | + QUAST calculate quality metrics for genome assemblies + homepage: http://bioinf.spbau.ru/quast + doi: +params: + - outdir: + type: string + description: | + The pipeline's output directory. By default, the module will + output files into `$params.outdir/` + - publish_dir_mode: + type: string + description: | + Value for the Nextflow `publishDir` mode parameter. + Available: symlink, rellink, link, copy, copyNoFollow, move. + - enable_conda: + type: boolean + description: | + Run the module with Conda using the software specified + via the `conda` directive + - singularity_pull_docker_container: + type: boolean + description: | + Instead of directly downloading Singularity images for use with Singularity, + force the workflow to pull and convert Docker containers instead. + +input: + - consensus: + type: map + description: | + Groovy Map containing sample information + - fasta: + type: file + description: | + The genome assembly to be evaluated + - gff: + type: file + description: The genome GFF file + +output: + - report: + type: file + description: The lineage report + pattern: "{prefix}.lineage_report.csv" + + - version: + type: file + description: File containing software version + pattern: "*.{version.txt}" + +authors: + - "@drpatelh" + - "@kevinmenden" diff --git a/tests/software/quast/main.nf b/tests/software/quast/main.nf new file mode 100644 index 00000000..366b0c90 --- /dev/null +++ b/tests/software/quast/main.nf @@ -0,0 +1,20 @@ +#!/usr/bin/env nextflow + +nextflow.enable.dsl = 2 + +include { QUAST as QUAST_NOREF } from '../../../software/quast/quast_noref/main.nf' addParams(options: [:]) +include { QUAST as QUAST_REF } from '../../../software/quast/quast_ref/main.nf' addParams(options: [:]) + +workflow test_quast_noref { + consensus = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.fna", checkIfExists: true) + + QUAST_NOREF( consensus ) +} + +workflow test_quast_ref { + consensus = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_cds_from_genomic.fna", checkIfExists: true) + gff = file("${launchDir}/tests/data/gff/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.gtf", checkIfExists: true) + fasta = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.fna", checkIfExists: true) + + QUAST_REF( consensus, fasta, gff ) +} diff --git a/tests/software/quast/test.yml b/tests/software/quast/test.yml new file mode 100644 index 00000000..e69de29b From e8bd730164f01b9409a87968ed54c55ad40b7fd0 Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Fri, 29 Jan 2021 16:14:33 +0100 Subject: [PATCH 02/13] added quast tests --- tests/software/quast/test.yml | 114 ++++++++++++++++++++++++++++++++++ 1 file changed, 114 insertions(+) diff --git a/tests/software/quast/test.yml b/tests/software/quast/test.yml index e69de29b..6d895298 100644 --- a/tests/software/quast/test.yml +++ b/tests/software/quast/test.yml @@ -0,0 +1,114 @@ +- name: quast_ref + command: nextflow run ./tests/software/quast -profile docker -entry test_quast_ref -c ./tests/config/nextflow.config + tags: + - quast + - quast_reference + files: + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tsv + md5sum: 4d24cc0da823a100a076aef36f9fd75e + - path: ./output/quast/quast/contigs_reports/GCA_011545545_1_ASM1154554v1_cds_from_genomic.mis_contigs.fa + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stdout + - path: ./output/quast/quast/aligned_stats/NGAx_plot.pdf + - path: ./output/quast/quast/report.pdf + - path: ./output/quast/quast/contigs_reports/misassemblies_report.tex + md5sum: ffe19cf4d5332952f0627e9cd82e3375 + - path: ./output/quast/quast/aligned_stats/NAx_plot.pdf + - path: ./output/quast/quast/icarus.html + - path: ./output/quast/quast/report.tsv + md5sum: 503ebb57ffed0422fd7aff4025e21143 + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tex + md5sum: 85614257e0bb62ac750f7872886b2fbf + - path: ./output/quast/quast/basic_stats/gc.icarus.txt + md5sum: b3a770802ff9b2dd4ee8e47bddb2df3e + - path: ./output/quast/quast/aligned_stats/cumulative_plot.pdf + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords.filtered + md5sum: ec9191d0acb5d5bce56b4842551a8598 + - path: ./output/quast/quast/basic_stats/Nx_plot.pdf + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords + md5sum: dda3fc0addc41ecc0d5183dee6f95886 + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords_tmp + md5sum: ce66eaeb99fdc11e4d50efadc1816e04 + - path: ./output/quast/quast/contigs_reports/unaligned_report.tsv + md5sum: 769f2d9d7deb5e7a63e238d8ba0cfe13 + - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.mis_contigs.info + md5sum: d41d8cd98f00b204e9800998ecf8427e + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned.info + md5sum: a8505cf206bf53ca369f7e3073fee587 + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.sf + - path: ./output/quast/quast/transposed_report.txt + md5sum: 389e9fa2b29b967cb658c0770c941ce6 + - path: ./output/quast/quast/genome_stats/GCA_011545545-1_ASM1154554v1_cds_from_genomic_gaps.txt + md5sum: c52381f09ea40b6141be5232494727b6 + - path: ./output/quast/quast/quast.log + - path: ./output/quast/report.tsv + md5sum: 503ebb57ffed0422fd7aff4025e21143 + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.txt + md5sum: 53c481fe8b3ef18280ea86cbded78b31 + - path: ./output/quast/quast/contigs_reports/unaligned_report.txt + md5sum: c1c26797084ea743ec5a224ab97adb1f + - path: ./output/quast/quast/report.txt + md5sum: 41bf3c24e68afce5ef0ba91004e57f7d + - path: ./output/quast/quast/transposed_report.tex + md5sum: 2a69aada90cc1e788a4bc877c44d79c8 + - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_cds_from_genomic_GC_content_plot.pdf + - path: ./output/quast/quast/contigs_reports/misassemblies_report.tsv + md5sum: 33144f8d064782864e8400e3a08b2a3a + - path: ./output/quast/quast/contigs_reports/unaligned_report.tex + md5sum: 48562e30903fcf33946e13b602b0e324 + - path: ./output/quast/quast/contigs_reports/misassemblies_plot.pdf + - path: ./output/quast/quast/transposed_report.tsv + md5sum: baab35c91e87432432113db1e4085f7b + - path: ./output/quast/quast/report.tex + md5sum: 8e72428ff7e7175bf47d58c10d8332e8 + - path: ./output/quast/quast/contigs_reports/misassemblies_frcurve_plot.pdf + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.used_snps.gz + md5sum: 7b1db1b433cd95243a949bcb72e7e3a6 + - path: ./output/quast/quast/contigs_reports/misassemblies_report.txt + md5sum: 0784e0d31e9f2a165730cc0029023427 + - path: ./output/quast/quast/icarus_viewers/alignment_viewer.html + md5sum: bd63165a204a2ab424f8e81c647038d1 + - path: ./output/quast/quast/contigs_reports/all_alignments_GCA_011545545-1_ASM1154554v1_cds_from_genomic.tsv + md5sum: c247152eb82b361106492642fd796e2c + - path: ./output/quast/quast/genome_stats/genome_info.txt + md5sum: 7c622ab66040d413a229419bf6b5181f + - path: ./output/quast/quast/basic_stats/NGx_plot.pdf + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned + md5sum: d41d8cd98f00b204e9800998ecf8427e + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stderr + - path: ./output/quast/quast/icarus_viewers/contig_size_viewer.html + md5sum: c42838b1553759fb0460a9854e39da36 + - path: ./output/quast/quast/report.html + - path: ./output/quast/quast/basic_stats/cumulative_plot.pdf + +- name: quast_noref + command: nextflow run ./tests/software/quast -profile docker -entry test_quast_noref -c ./tests/config/nextflow.config + tags: + - quast + - quast_no_reference + files: + - path: ./output/quast/quast/report.pdf + - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf + - path: ./output/quast/quast/transposed_report.tsv + md5sum: 1a82adfc057b6dc788034a6ce023cb56 + - path: ./output/quast/quast/basic_stats/Nx_plot.pdf + - path: ./output/quast/quast/quast.log + - path: ./output/quast/quast/basic_stats/cumulative_plot.pdf + - path: ./output/quast/quast/transposed_report.tex + md5sum: a86aa094f9ab4bc1df35c5a7add2d0b0 + - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_genomic_GC_content_plot.pdf + - path: ./output/quast/quast/report.txt + md5sum: 7a2e442c18dd2730cfd38723f1c9c8f9 + - path: ./output/quast/quast/icarus_viewers/contig_size_viewer.html + md5sum: dcf600c49ee86783475cb25215072630 + - path: ./output/quast/quast/report.tsv + md5sum: 75882c0a5d811246395f5ea56146ce76 + - path: ./output/quast/quast/report.tex + md5sum: 132edd2e916fc2a76a7b13973a0ffa4b + - path: ./output/quast/quast/icarus.html + md5sum: 9d7429362288c5078e6d6e7efcfc1ff7 + - path: ./output/quast/quast/transposed_report.txt + md5sum: 154d88ec197c7b1bda5938232a79a00a + - path: ./output/quast/report.tsv + md5sum: 75882c0a5d811246395f5ea56146ce76 + - path: ./output/quast/quast/report.html From 34cfc32c29c7435f4463120714e708b60788ba81 Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Fri, 29 Jan 2021 16:15:45 +0100 Subject: [PATCH 03/13] added quast workflow --- .github/workflows/quast.yml | 40 +++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .github/workflows/quast.yml diff --git a/.github/workflows/quast.yml b/.github/workflows/quast.yml new file mode 100644 index 00000000..7030d638 --- /dev/null +++ b/.github/workflows/quast.yml @@ -0,0 +1,40 @@ +name: quast +on: + push: + paths: + - software/quast/** + - .github/workflows/quast.yml + - tests + pull_request: + paths: + - software/pquast/** + - .github/workflows/quest.yml + - tests + +jobs: + ci_test: + runs-on: ubuntu-latest + strategy: + matrix: + nxf_version: [20.11.0-edge] + env: + NXF_ANSI_LOG: false + steps: + - uses: actions/checkout@v2 + + - name: Install Nextflow + env: + NXF_VER: ${{ matrix.nxf_version }} + run: | + wget -qO- get.nextflow.io | bash + sudo mv nextflow /usr/local/bin/ + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: "3.x" + - name: Install dependencies + run: python -m pip install --upgrade pip pytest-workflow + + # Test the module + - run: pytest --tag quest --symlink --wt 2 From 956bf22a58c00da45c6dbbd82a970c724a655ebf Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Mon, 1 Feb 2021 07:44:26 +0100 Subject: [PATCH 04/13] fixed bug; updated meta.yml --- .github/workflows/quast.yml | 2 +- software/quast/quast_noref/meta.yml | 11 ++++++----- software/quast/quast_ref/meta.yml | 17 +++++++++-------- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.github/workflows/quast.yml b/.github/workflows/quast.yml index 7030d638..669d916b 100644 --- a/.github/workflows/quast.yml +++ b/.github/workflows/quast.yml @@ -37,4 +37,4 @@ jobs: run: python -m pip install --upgrade pip pytest-workflow # Test the module - - run: pytest --tag quest --symlink --wt 2 + - run: pytest --tag quast --symlink --wt 2 diff --git a/software/quast/quast_noref/meta.yml b/software/quast/quast_noref/meta.yml index 9b46bf42..8f758b10 100644 --- a/software/quast/quast_noref/meta.yml +++ b/software/quast/quast_noref/meta.yml @@ -5,9 +5,9 @@ keywords: - assembly - quality tools: - - star: + - quast: description: | - QUAST calculate quality metrics for genome assemblies + QUAST calculates quality metrics for genome assemblies homepage: http://bioinf.spbau.ru/quast doi: params: @@ -34,15 +34,16 @@ params: input: - consensus: - type: map + type: file description: | - Groovy Map containing sample information + Fasta file containing the assembly of interest output: - - report: + - results: type: file description: The lineage report pattern: "{prefix}.lineage_report.csv" + - tsv: - version: type: file diff --git a/software/quast/quast_ref/meta.yml b/software/quast/quast_ref/meta.yml index a1ca27b3..03526be7 100644 --- a/software/quast/quast_ref/meta.yml +++ b/software/quast/quast_ref/meta.yml @@ -1,13 +1,13 @@ -name: quast +name: quast_reference description: Quality Assessment Tool for Genome Assemblies keywords: - quast - assembly - quality tools: - - star: + - quast: description: | - QUAST calculate quality metrics for genome assemblies + QUAST calculates quality metrics for genome assemblies homepage: http://bioinf.spbau.ru/quast doi: params: @@ -34,9 +34,9 @@ params: input: - consensus: - type: map + type: file description: | - Groovy Map containing sample information + Fasta file containing the assembly of interest - fasta: type: file description: | @@ -46,10 +46,11 @@ input: description: The genome GFF file output: - - report: - type: file - description: The lineage report + - quast: + type: directory + description: Directory containing complete quast report pattern: "{prefix}.lineage_report.csv" + - report: - version: type: file From b5298f94d80a40b609632f82761dfee41a9ae2c3 Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Mon, 1 Feb 2021 13:13:21 +0100 Subject: [PATCH 05/13] refactored quast module --- software/quast/{quast_noref => }/functions.nf | 0 software/quast/{quast_ref => }/main.nf | 13 ++-- software/quast/{quast_ref => }/meta.yml | 12 +++- software/quast/quast_noref/main.nf | 41 ------------- software/quast/quast_noref/meta.yml | 55 ----------------- software/quast/quast_ref/functions.nf | 59 ------------------- tests/software/quast/main.nf | 23 +++++--- 7 files changed, 31 insertions(+), 172 deletions(-) rename software/quast/{quast_noref => }/functions.nf (100%) rename software/quast/{quast_ref => }/main.nf (82%) rename software/quast/{quast_ref => }/meta.yml (80%) delete mode 100644 software/quast/quast_noref/main.nf delete mode 100644 software/quast/quast_noref/meta.yml delete mode 100644 software/quast/quast_ref/functions.nf diff --git a/software/quast/quast_noref/functions.nf b/software/quast/functions.nf similarity index 100% rename from software/quast/quast_noref/functions.nf rename to software/quast/functions.nf diff --git a/software/quast/quast_ref/main.nf b/software/quast/main.nf similarity index 82% rename from software/quast/quast_ref/main.nf rename to software/quast/main.nf index 0a811445..3690c08b 100644 --- a/software/quast/quast_ref/main.nf +++ b/software/quast/main.nf @@ -21,7 +21,9 @@ process QUAST { input: path consensus path fasta + val use_fasta path gff + val use_gff output: path "${prefix}" , emit: results @@ -29,14 +31,15 @@ process QUAST { path '*.version.txt', emit: version script: - def software = getSoftwareName(task.process) - prefix = options.suffix ?: software - def features = params.gff ? "--features $gff" : '' + def software = getSoftwareName(task.process) + prefix = options.suffix ?: software + def features = use_gff ? "--features $gff" : '' + def reference = use_fasta ? "-r $fasta" : '' """ quast.py \\ --output-dir $prefix \\ - -r $fasta \\ - $features \\ + ${reference} \\ + ${features} \\ --threads $task.cpus \\ $options.args \\ ${consensus.join(' ')} diff --git a/software/quast/quast_ref/meta.yml b/software/quast/meta.yml similarity index 80% rename from software/quast/quast_ref/meta.yml rename to software/quast/meta.yml index 03526be7..ae63de65 100644 --- a/software/quast/quast_ref/meta.yml +++ b/software/quast/meta.yml @@ -1,4 +1,4 @@ -name: quast_reference +name: quast description: Quality Assessment Tool for Genome Assemblies keywords: - quast @@ -40,10 +40,16 @@ input: - fasta: type: file description: | - The genome assembly to be evaluated + The genome assembly to be evaluated. Has to contain at least a non-empty string dummy value. + - use_fasta: + type: boolean + description: Whether to use a fasta reference - gff: type: file - description: The genome GFF file + description: The genome GFF file. Has to contain at least a non-empty string dummy value. + - use_gff: + type: boolean + description: Whether to use a gff reference output: - quast: diff --git a/software/quast/quast_noref/main.nf b/software/quast/quast_noref/main.nf deleted file mode 100644 index 2ad9ac79..00000000 --- a/software/quast/quast_noref/main.nf +++ /dev/null @@ -1,41 +0,0 @@ -// Import generic module functions -include { initOptions; saveFiles; getSoftwareName } from './functions' - -params.options = [:] -def options = initOptions(params.options) - -process QUAST { - tag "$fasta" - label 'process_medium' - publishDir "${params.outdir}", - mode: params.publish_dir_mode, - saveAs: { filename -> saveFiles(filename:filename, options:params.options, publish_dir:getSoftwareName(task.process), publish_id:'') } - - conda (params.enable_conda ? 'bioconda::quast=5.0.2' : null) - if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) { - container 'https://depot.galaxyproject.org/singularity/quast:5.0.2--py37pl526hb5aa323_2' - } else { - container 'quay.io/biocontainers/quast:5.0.2--py37pl526hb5aa323_2' - } - - input: - path consensus - - output: - path "${prefix}" , emit: results - path '*.tsv' , emit: tsv - path '*.version.txt', emit: version - - script: - def software = getSoftwareName(task.process) - prefix = options.suffix ?: software - """ - quast.py \\ - --output-dir $prefix \\ - --threads $task.cpus \\ - $options.args \\ - $consensus - ln -s ${prefix}/report.tsv - echo \$(quast.py --version 2>&1) | sed 's/^.*QUAST v//; s/ .*\$//' > ${software}.version.txt - """ -} diff --git a/software/quast/quast_noref/meta.yml b/software/quast/quast_noref/meta.yml deleted file mode 100644 index 8f758b10..00000000 --- a/software/quast/quast_noref/meta.yml +++ /dev/null @@ -1,55 +0,0 @@ -name: quast -description: Quality Assessment Tool for Genome Assemblies -keywords: - - quast - - assembly - - quality -tools: - - quast: - description: | - QUAST calculates quality metrics for genome assemblies - homepage: http://bioinf.spbau.ru/quast - doi: -params: - - outdir: - type: string - description: | - The pipeline's output directory. By default, the module will - output files into `$params.outdir/` - - publish_dir_mode: - type: string - description: | - Value for the Nextflow `publishDir` mode parameter. - Available: symlink, rellink, link, copy, copyNoFollow, move. - - enable_conda: - type: boolean - description: | - Run the module with Conda using the software specified - via the `conda` directive - - singularity_pull_docker_container: - type: boolean - description: | - Instead of directly downloading Singularity images for use with Singularity, - force the workflow to pull and convert Docker containers instead. - -input: - - consensus: - type: file - description: | - Fasta file containing the assembly of interest - -output: - - results: - type: file - description: The lineage report - pattern: "{prefix}.lineage_report.csv" - - tsv: - - - version: - type: file - description: File containing software version - pattern: "*.{version.txt}" - -authors: - - "@drpatelh" - - "@kevinmenden" diff --git a/software/quast/quast_ref/functions.nf b/software/quast/quast_ref/functions.nf deleted file mode 100644 index d25eea86..00000000 --- a/software/quast/quast_ref/functions.nf +++ /dev/null @@ -1,59 +0,0 @@ -/* - * ----------------------------------------------------- - * Utility functions used in nf-core DSL2 module files - * ----------------------------------------------------- - */ - -/* - * Extract name of software tool from process name using $task.process - */ -def getSoftwareName(task_process) { - return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase() -} - -/* - * Function to initialise default values and to generate a Groovy Map of available options for nf-core modules - */ -def initOptions(Map args) { - def Map options = [:] - options.args = args.args ?: '' - options.args2 = args.args2 ?: '' - options.publish_by_id = args.publish_by_id ?: false - options.publish_dir = args.publish_dir ?: '' - options.publish_files = args.publish_files - options.suffix = args.suffix ?: '' - return options -} - -/* - * Tidy up and join elements of a list to return a path string - */ -def getPathFromList(path_list) { - def paths = path_list.findAll { item -> !item?.trim().isEmpty() } // Remove empty entries - paths = paths.collect { it.trim().replaceAll("^[/]+|[/]+\$", "") } // Trim whitespace and trailing slashes - return paths.join('/') -} - -/* - * Function to save/publish module results - */ -def saveFiles(Map args) { - if (!args.filename.endsWith('.version.txt')) { - def ioptions = initOptions(args.options) - def path_list = [ ioptions.publish_dir ?: args.publish_dir ] - if (ioptions.publish_by_id) { - path_list.add(args.publish_id) - } - if (ioptions.publish_files instanceof Map) { - for (ext in ioptions.publish_files) { - if (args.filename.endsWith(ext.key)) { - def ext_list = path_list.collect() - ext_list.add(ext.value) - return "${getPathFromList(ext_list)}/$args.filename" - } - } - } else if (ioptions.publish_files == null) { - return "${getPathFromList(path_list)}/$args.filename" - } - } -} diff --git a/tests/software/quast/main.nf b/tests/software/quast/main.nf index 366b0c90..7ef3d9ac 100644 --- a/tests/software/quast/main.nf +++ b/tests/software/quast/main.nf @@ -2,19 +2,24 @@ nextflow.enable.dsl = 2 -include { QUAST as QUAST_NOREF } from '../../../software/quast/quast_noref/main.nf' addParams(options: [:]) -include { QUAST as QUAST_REF } from '../../../software/quast/quast_ref/main.nf' addParams(options: [:]) - -workflow test_quast_noref { - consensus = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.fna", checkIfExists: true) - - QUAST_NOREF( consensus ) -} +include { QUAST } from '../../../software/quast/main.nf' addParams(options: [:]) workflow test_quast_ref { consensus = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_cds_from_genomic.fna", checkIfExists: true) gff = file("${launchDir}/tests/data/gff/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.gtf", checkIfExists: true) fasta = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_genomic.fna", checkIfExists: true) + def use_fasta = true + def use_gtf = true - QUAST_REF( consensus, fasta, gff ) + QUAST( consensus, fasta, use_fasta, gff, use_gtf) +} + +workflow test_quast_noref { + consensus = file("${launchDir}/tests/data/fasta/sarscov2/GCA_011545545.1_ASM1154554v1_cds_from_genomic.fna", checkIfExists: true) + gff = file('gff_dummy') + fasta = file('fasta_dummy') + def use_fasta = false + def use_gtf = false + + QUAST( consensus, fasta, use_fasta, gff, use_gtf) } From a342296d7013301f3ad1769cfb492ddc3f14e8df Mon Sep 17 00:00:00 2001 From: kevinmenden Date: Mon, 1 Feb 2021 13:36:25 +0100 Subject: [PATCH 06/13] fixed test md5s --- tests/software/quast/test.yml | 188 ++++++++++++++++++---------------- 1 file changed, 97 insertions(+), 91 deletions(-) diff --git a/tests/software/quast/test.yml b/tests/software/quast/test.yml index 6d895298..2ceccc54 100644 --- a/tests/software/quast/test.yml +++ b/tests/software/quast/test.yml @@ -4,82 +4,88 @@ - quast - quast_reference files: - - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tsv - md5sum: 4d24cc0da823a100a076aef36f9fd75e - - path: ./output/quast/quast/contigs_reports/GCA_011545545_1_ASM1154554v1_cds_from_genomic.mis_contigs.fa - - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stdout - - path: ./output/quast/quast/aligned_stats/NGAx_plot.pdf - - path: ./output/quast/quast/report.pdf - - path: ./output/quast/quast/contigs_reports/misassemblies_report.tex - md5sum: ffe19cf4d5332952f0627e9cd82e3375 - - path: ./output/quast/quast/aligned_stats/NAx_plot.pdf - - path: ./output/quast/quast/icarus.html - - path: ./output/quast/quast/report.tsv - md5sum: 503ebb57ffed0422fd7aff4025e21143 - - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tex - md5sum: 85614257e0bb62ac750f7872886b2fbf - - path: ./output/quast/quast/basic_stats/gc.icarus.txt - md5sum: b3a770802ff9b2dd4ee8e47bddb2df3e - - path: ./output/quast/quast/aligned_stats/cumulative_plot.pdf + - path: ./output/quast/quast/basic_stats/NGx_plot.pdf - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords.filtered md5sum: ec9191d0acb5d5bce56b4842551a8598 - - path: ./output/quast/quast/basic_stats/Nx_plot.pdf - - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords - md5sum: dda3fc0addc41ecc0d5183dee6f95886 - - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords_tmp - md5sum: ce66eaeb99fdc11e4d50efadc1816e04 - - path: ./output/quast/quast/contigs_reports/unaligned_report.tsv - md5sum: 769f2d9d7deb5e7a63e238d8ba0cfe13 - - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf - - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.mis_contigs.info - md5sum: d41d8cd98f00b204e9800998ecf8427e - - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned.info - md5sum: a8505cf206bf53ca369f7e3073fee587 - - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.sf - - path: ./output/quast/quast/transposed_report.txt - md5sum: 389e9fa2b29b967cb658c0770c941ce6 - - path: ./output/quast/quast/genome_stats/GCA_011545545-1_ASM1154554v1_cds_from_genomic_gaps.txt - md5sum: c52381f09ea40b6141be5232494727b6 - - path: ./output/quast/quast/quast.log - - path: ./output/quast/report.tsv - md5sum: 503ebb57ffed0422fd7aff4025e21143 - - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.txt - md5sum: 53c481fe8b3ef18280ea86cbded78b31 - - path: ./output/quast/quast/contigs_reports/unaligned_report.txt - md5sum: c1c26797084ea743ec5a224ab97adb1f - - path: ./output/quast/quast/report.txt - md5sum: 41bf3c24e68afce5ef0ba91004e57f7d - - path: ./output/quast/quast/transposed_report.tex - md5sum: 2a69aada90cc1e788a4bc877c44d79c8 - - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_cds_from_genomic_GC_content_plot.pdf - - path: ./output/quast/quast/contigs_reports/misassemblies_report.tsv - md5sum: 33144f8d064782864e8400e3a08b2a3a - - path: ./output/quast/quast/contigs_reports/unaligned_report.tex - md5sum: 48562e30903fcf33946e13b602b0e324 - - path: ./output/quast/quast/contigs_reports/misassemblies_plot.pdf - - path: ./output/quast/quast/transposed_report.tsv - md5sum: baab35c91e87432432113db1e4085f7b - - path: ./output/quast/quast/report.tex - md5sum: 8e72428ff7e7175bf47d58c10d8332e8 - - path: ./output/quast/quast/contigs_reports/misassemblies_frcurve_plot.pdf - - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.used_snps.gz - md5sum: 7b1db1b433cd95243a949bcb72e7e3a6 - - path: ./output/quast/quast/contigs_reports/misassemblies_report.txt - md5sum: 0784e0d31e9f2a165730cc0029023427 - - path: ./output/quast/quast/icarus_viewers/alignment_viewer.html - md5sum: bd63165a204a2ab424f8e81c647038d1 - - path: ./output/quast/quast/contigs_reports/all_alignments_GCA_011545545-1_ASM1154554v1_cds_from_genomic.tsv - md5sum: c247152eb82b361106492642fd796e2c - - path: ./output/quast/quast/genome_stats/genome_info.txt - md5sum: 7c622ab66040d413a229419bf6b5181f - - path: ./output/quast/quast/basic_stats/NGx_plot.pdf - - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned - md5sum: d41d8cd98f00b204e9800998ecf8427e - - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stderr + - path: ./output/quast/quast/aligned_stats/NGAx_plot.pdf - path: ./output/quast/quast/icarus_viewers/contig_size_viewer.html md5sum: c42838b1553759fb0460a9854e39da36 + - path: ./output/quast/report.tsv + md5sum: b203a9d2c995bd66552eeb5cb0a98762 + - path: ./output/quast/quast/report.tex + md5sum: 8168f197dfb2f781accdefaa0d90fc87 + - path: ./output/quast/quast/contigs_reports/misassemblies_frcurve_plot.pdf + - path: ./output/quast/quast/transposed_report.tex + md5sum: 0b8fd00649a5758024c8093d5919f71c + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords + md5sum: dda3fc0addc41ecc0d5183dee6f95886 + - path: ./output/quast/quast/transposed_report.txt + md5sum: 73216314e65ef91c24422d5bdd0795e4 - path: ./output/quast/quast/report.html + - path: ./output/quast/quast/report.pdf + - path: ./output/quast/quast/contigs_reports/all_alignments_GCA_011545545-1_ASM1154554v1_cds_from_genomic.tsv + md5sum: c247152eb82b361106492642fd796e2c + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.used_snps.gz + md5sum: 7b1db1b433cd95243a949bcb72e7e3a6 + - path: ./output/quast/quast/contigs_reports/unaligned_report.tex + md5sum: 48562e30903fcf33946e13b602b0e324 + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.sf + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.txt + md5sum: 53c481fe8b3ef18280ea86cbded78b31 + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.mis_contigs.info + md5sum: d41d8cd98f00b204e9800998ecf8427e + - path: ./output/quast/quast/contigs_reports/unaligned_report.tsv + md5sum: 769f2d9d7deb5e7a63e238d8ba0cfe13 + - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_cds_from_genomic_GC_content_plot.pdf + - path: ./output/quast/quast/genome_stats/features_cumulative_plot.pdf + - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tex + md5sum: 85614257e0bb62ac750f7872886b2fbf + - path: ./output/quast/quast/quast.log + - path: ./output/quast/quast/contigs_reports/misassemblies_report.tsv + md5sum: 33144f8d064782864e8400e3a08b2a3a + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned.info + md5sum: a8505cf206bf53ca369f7e3073fee587 + - path: ./output/quast/quast/genome_stats/GCA_011545545-1_ASM1154554v1_cds_from_genomic_genomic_features_any.txt + md5sum: 307b3bb1f42fc2f11a60a2e9846021d7 + - path: ./output/quast/quast/icarus.html + md5sum: 6e57f5f7d07528496fc2f35b449951fe + - path: ./output/quast/quast/contigs_reports/transposed_report_misassemblies.tsv + md5sum: 4d24cc0da823a100a076aef36f9fd75e + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stderr + - path: ./output/quast/quast/aligned_stats/cumulative_plot.pdf + - path: ./output/quast/quast/genome_stats/genome_info.txt + md5sum: bc3df27ad7356c045c9a108f9d4bcfbe + - path: ./output/quast/quast/genome_stats/features_frcurve_plot.pdf + - path: ./output/quast/quast/contigs_reports/misassemblies_report.txt + md5sum: 0784e0d31e9f2a165730cc0029023427 + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.unaligned + md5sum: d41d8cd98f00b204e9800998ecf8427e + - path: ./output/quast/quast/contigs_reports/contigs_report_GCA_011545545-1_ASM1154554v1_cds_from_genomic.stdout + - path: ./output/quast/quast/contigs_reports/unaligned_report.txt + md5sum: c1c26797084ea743ec5a224ab97adb1f + - path: ./output/quast/quast/genome_stats/GCA_011545545-1_ASM1154554v1_cds_from_genomic_gaps.txt + md5sum: c52381f09ea40b6141be5232494727b6 + - path: ./output/quast/quast/icarus_viewers/alignment_viewer.html + md5sum: ad5176f21d3c4809a9a8f9c27bb8d70a + - path: ./output/quast/quast/contigs_reports/misassemblies_report.tex + md5sum: ffe19cf4d5332952f0627e9cd82e3375 + - path: ./output/quast/quast/contigs_reports/minimap_output/GCA_011545545-1_ASM1154554v1_cds_from_genomic.coords_tmp + md5sum: ce66eaeb99fdc11e4d50efadc1816e04 + - path: ./output/quast/quast/basic_stats/gc.icarus.txt + md5sum: b3a770802ff9b2dd4ee8e47bddb2df3e + - path: ./output/quast/quast/basic_stats/Nx_plot.pdf + - path: ./output/quast/quast/transposed_report.tsv + md5sum: 1754bd6c6fa8a0172a342a48dd3ca505 - path: ./output/quast/quast/basic_stats/cumulative_plot.pdf + - path: ./output/quast/quast/report.txt + md5sum: e334b3390a5028cbf88fe4ccab2b6499 + - path: ./output/quast/quast/contigs_reports/misassemblies_plot.pdf + - path: ./output/quast/quast/report.tsv + md5sum: b203a9d2c995bd66552eeb5cb0a98762 + - path: ./output/quast/quast/contigs_reports/GCA_011545545_1_ASM1154554v1_cds_from_genomic.mis_contigs.fa + md5sum: d41d8cd98f00b204e9800998ecf8427e + - path: ./output/quast/quast/aligned_stats/NAx_plot.pdf - name: quast_noref command: nextflow run ./tests/software/quast -profile docker -entry test_quast_noref -c ./tests/config/nextflow.config @@ -87,28 +93,28 @@ - quast - quast_no_reference files: - - path: ./output/quast/quast/report.pdf - - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf - - path: ./output/quast/quast/transposed_report.tsv - md5sum: 1a82adfc057b6dc788034a6ce023cb56 - - path: ./output/quast/quast/basic_stats/Nx_plot.pdf - - path: ./output/quast/quast/quast.log - - path: ./output/quast/quast/basic_stats/cumulative_plot.pdf - - path: ./output/quast/quast/transposed_report.tex - md5sum: a86aa094f9ab4bc1df35c5a7add2d0b0 - - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_genomic_GC_content_plot.pdf - - path: ./output/quast/quast/report.txt - md5sum: 7a2e442c18dd2730cfd38723f1c9c8f9 - path: ./output/quast/quast/icarus_viewers/contig_size_viewer.html - md5sum: dcf600c49ee86783475cb25215072630 - - path: ./output/quast/quast/report.tsv - md5sum: 75882c0a5d811246395f5ea56146ce76 - - path: ./output/quast/quast/report.tex - md5sum: 132edd2e916fc2a76a7b13973a0ffa4b - - path: ./output/quast/quast/icarus.html - md5sum: 9d7429362288c5078e6d6e7efcfc1ff7 + md5sum: d2680b8083139e62baf7af0f852d52b8 - path: ./output/quast/quast/transposed_report.txt - md5sum: 154d88ec197c7b1bda5938232a79a00a + md5sum: b6b126e9dcfd8c8e7bd36dff9220caf0 - path: ./output/quast/report.tsv - md5sum: 75882c0a5d811246395f5ea56146ce76 + md5sum: 55d2938fcdb678e97d441cf32b9c740e + - path: ./output/quast/quast/icarus.html + md5sum: dcb11b4c7b6c21190c1344c46288d3f4 + - path: ./output/quast/quast/report.txt + md5sum: c8e87f40e888a0395be04f78532d9deb + - path: ./output/quast/quast/transposed_report.tsv + md5sum: 27b6c755be5d70e3eed22e1bf3f68ce5 + - path: ./output/quast/quast/quast.log + - path: ./output/quast/quast/report.tex + md5sum: 69c31172ae6257663b22bb192ba84682 + - path: ./output/quast/quast/report.pdf + - path: ./output/quast/quast/basic_stats/GCA_011545545.1_ASM1154554v1_cds_from_genomic_GC_content_plot.pdf + - path: ./output/quast/quast/basic_stats/cumulative_plot.pdf + - path: ./output/quast/quast/report.tsv + md5sum: 55d2938fcdb678e97d441cf32b9c740e + - path: ./output/quast/quast/transposed_report.tex + md5sum: 213fb615afe21904e52d670e602c1f62 + - path: ./output/quast/quast/basic_stats/GC_content_plot.pdf + - path: ./output/quast/quast/basic_stats/Nx_plot.pdf - path: ./output/quast/quast/report.html From c43fe85a0c1e543ab9786348470492c7c22d9bc2 Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:02:57 +0100 Subject: [PATCH 07/13] Update software/quast/main.nf Co-authored-by: Harshil Patel --- software/quast/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/software/quast/main.nf b/software/quast/main.nf index 3690c08b..32a730fd 100644 --- a/software/quast/main.nf +++ b/software/quast/main.nf @@ -21,8 +21,8 @@ process QUAST { input: path consensus path fasta - val use_fasta path gff + val use_fasta val use_gff output: From d88bf3bddae8359506692b3b92c75039ad945aaf Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:03:06 +0100 Subject: [PATCH 08/13] Update software/quast/main.nf Co-authored-by: Harshil Patel --- software/quast/main.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/software/quast/main.nf b/software/quast/main.nf index 32a730fd..2acdc270 100644 --- a/software/quast/main.nf +++ b/software/quast/main.nf @@ -38,8 +38,8 @@ process QUAST { """ quast.py \\ --output-dir $prefix \\ - ${reference} \\ - ${features} \\ + $reference \\ + $features \\ --threads $task.cpus \\ $options.args \\ ${consensus.join(' ')} From c807c6c438a04967b05b4c54a2f463d12d7c24fb Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:03:15 +0100 Subject: [PATCH 09/13] Update software/quast/main.nf Co-authored-by: Harshil Patel --- software/quast/main.nf | 1 - 1 file changed, 1 deletion(-) diff --git a/software/quast/main.nf b/software/quast/main.nf index 2acdc270..4d5ed531 100644 --- a/software/quast/main.nf +++ b/software/quast/main.nf @@ -5,7 +5,6 @@ params.options = [:] def options = initOptions(params.options) process QUAST { - tag "$fasta" label 'process_medium' publishDir "${params.outdir}", mode: params.publish_dir_mode, From 9885da628e6f170ca1375fbebdae27f9d8375d03 Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:03:22 +0100 Subject: [PATCH 10/13] Update software/quast/meta.yml Co-authored-by: Harshil Patel --- software/quast/meta.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/software/quast/meta.yml b/software/quast/meta.yml index ae63de65..004b1554 100644 --- a/software/quast/meta.yml +++ b/software/quast/meta.yml @@ -49,7 +49,7 @@ input: description: The genome GFF file. Has to contain at least a non-empty string dummy value. - use_gff: type: boolean - description: Whether to use a gff reference + description: Whether to use the provided gff reference annotation file output: - quast: From f6c4e9d9c1d79e8846db04944734c7c93f1cad22 Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:03:36 +0100 Subject: [PATCH 11/13] Update software/quast/meta.yml Co-authored-by: Harshil Patel --- software/quast/meta.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/software/quast/meta.yml b/software/quast/meta.yml index 004b1554..dde96c97 100644 --- a/software/quast/meta.yml +++ b/software/quast/meta.yml @@ -43,7 +43,7 @@ input: The genome assembly to be evaluated. Has to contain at least a non-empty string dummy value. - use_fasta: type: boolean - description: Whether to use a fasta reference + description: Whether to use the provided fasta reference genome file - gff: type: file description: The genome GFF file. Has to contain at least a non-empty string dummy value. From 05370b5e1609aa5bdaa7dca647e9cbcb2fdeaa54 Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:03:49 +0100 Subject: [PATCH 12/13] Update tests/software/quast/main.nf Co-authored-by: Harshil Patel --- tests/software/quast/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/software/quast/main.nf b/tests/software/quast/main.nf index 7ef3d9ac..ab9862da 100644 --- a/tests/software/quast/main.nf +++ b/tests/software/quast/main.nf @@ -11,7 +11,7 @@ workflow test_quast_ref { def use_fasta = true def use_gtf = true - QUAST( consensus, fasta, use_fasta, gff, use_gtf) + QUAST( consensus, fasta, gff, use_fasta, use_gtf ) } workflow test_quast_noref { From 0bd8506ea10d5373c17f97ad43602bd0b203b8a8 Mon Sep 17 00:00:00 2001 From: Kevin Menden Date: Mon, 1 Feb 2021 14:04:08 +0100 Subject: [PATCH 13/13] Update tests/software/quast/main.nf Co-authored-by: Harshil Patel --- tests/software/quast/main.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/software/quast/main.nf b/tests/software/quast/main.nf index ab9862da..89a1637c 100644 --- a/tests/software/quast/main.nf +++ b/tests/software/quast/main.nf @@ -21,5 +21,5 @@ workflow test_quast_noref { def use_fasta = false def use_gtf = false - QUAST( consensus, fasta, use_fasta, gff, use_gtf) + QUAST( consensus, fasta, gff, use_fasta, use_gtf ) }