From 624826f72d8045442768d5e641fdad5835548f3a Mon Sep 17 00:00:00 2001 From: DavyCats <davycats.dc@gmail.com> Date: Wed, 8 Jan 2020 13:40:06 +0100 Subject: [PATCH] add parameter_meta to picard metrics --- CHANGELOG.md | 2 ++ picard.wdl | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++-- scripts | 2 +- 3 files changed, 91 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f8371f..49db6bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ that users understand how the changes affect the new version. version 2.2.0-dev --------------------------- ++ Added parameter_meta sections to a variety of tasks. ++ Picard's BedToIntervalList outputPath ipnut is now optional (with a default of "regions.interval_list") + Update htseq to default image version 0.11.2 + Update biowdl-input-converter in common.wdl to version 0.2.1. + Update TALON section to now include the new annotation file output, and add config file creation to the TALON task. diff --git a/picard.wdl b/picard.wdl index caee009..d5daa24 100644 --- a/picard.wdl +++ b/picard.wdl @@ -4,7 +4,7 @@ task BedToIntervalList { input { File bedFile File dict - String outputPath + String outputPath = "regions.interval_list" String memory = "12G" String javaXmx = "4G" @@ -29,6 +29,18 @@ task BedToIntervalList { docker: dockerImage memory: memory } + + parameter_meta { + bedfile: {description: "A bed file", category: "required"} + dict: {description: "A sequence dict file.", category: "required"} + outputPath: {description: "The location the output interval list should be written to.", + category: "advanced"} + memory: {description: "The amount of memory this job will use.", category: "advanced"} + javaXmx: {description: "The maximum memory available to the program. (Should be lower than `memory` to accommodate JVM overhead.", + category: "advanced"} + dockerImage: {description: "The docker image used for this task. Changing this may result in errors which the developers may choose not to address.", + category: "advanced"} + } } task CollectMultipleMetrics { @@ -119,10 +131,44 @@ task CollectMultipleMetrics { } runtime { - docker: dockerImage memory: memory } + + parameter_meta { + inputBam: {description: "The input BAM file for which metrics will be collected.", + category: "required"} + inputBamIndex: {description: "The index of the input BAM file.", category: "required"} + referenceFasta: {description: "The reference fasta file which was also used for mapping.", + category: "required"} + referenceFastaDict: {description: "The sequence dictionary associated with the reference fasta file.", + category: "required"} + referenceFastaFai: {description: "The index for the reference fasta file.", category: "required"} + basename: {description: "The basename/prefix of the output files (may include directories).", + category: "required"} + collectAlignmentSummaryMetrics: {description: "Equivalent to the `PROGRAM=CollectAlignmentSummaryMetrics` argument.", + category: "common"} + collectInsertSizeMetrics: {description: "Equivalent to the `PROGRAM=CollectInsertSizeMetrics` argument.", + category: "common"} + qualityScoreDistribution: {description: "Equivalent to the `PROGRAM=QualityScoreDistribution` argument.", + category: "common"} + meanQualityByCycle: {description: "Equivalent to the `PROGRAM=MeanQualityByCycle` argument.", + category: "common"} + collectBaseDistributionByCycle: {description: "Equivalent to the `PROGRAM=CollectBaseDistributionByCycle` argument.", + category: "common"} + collectGcBiasMetrics: {description: "Equivalent to the `PROGRAM=CollectGcBiasMetrics` argument.", + category: "common"} + collectSequencingArtifactMetrics: {description: "Equivalent to the `PROGRAM=CollectSequencingArtifactMetrics` argument.", + category: "common"} + collectQualityYieldMetrics: {description: "Equivalent to the `PROGRAM=CollectQualityYieldMetrics` argument.", + category: "common"} + + memory: {description: "The amount of memory this job will use.", category: "advanced"} + javaXmx: {description: "The maximum memory available to the program. (Should be lower than `memory` to accommodate JVM overhead.", + category: "advanced"} + dockerImage: {description: "The docker image used for this task. Changing this may result in errors which the developers may choose not to address.", + category: "advanced"} + } } task CollectRnaSeqMetrics { @@ -159,6 +205,23 @@ task CollectRnaSeqMetrics { docker: dockerImage memory: memory } + + parameter_meta { + inputBam: {description: "The input BAM file for which metrics will be collected.", + category: "required"} + inputBamIndex: {description: "The index of the input BAM file.", category: "required"} + refRefflat: {description: "A refflat file containing gene annotations", catehory: "required"} + basename: {description: "The basename/prefix of the output files (may include directories).", + category: "required"} + strandSpecificity: {description: "Equivalent to the `STRAND_SPECIFICITY` option of picard's CollectRnaSeqMetrics", + category: "common"} + + memory: {description: "The amount of memory this job will use.", category: "advanced"} + javaXmx: {description: "The maximum memory available to the program. (Should be lower than `memory` to accommodate JVM overhead.", + category: "advanced"} + dockerImage: {description: "The docker image used for this task. Changing this may result in errors which the developers may choose not to address.", + category: "advanced"} + } } task CollectTargetedPcrMetrics { @@ -201,6 +264,29 @@ task CollectTargetedPcrMetrics { docker: dockerImage memory: memory } + + parameter_meta { + inputBam: {description: "The input BAM file for which metrics will be collected.", + category: "required"} + inputBamIndex: {description: "The index of the input BAM file.", category: "required"} + referenceFasta: {description: "The reference fasta file which was also used for mapping.", + category: "required"} + referenceFastaDict: {description: "The sequence dictionary associated with the reference fasta file.", + category: "required"} + referenceFastaFai: {description: "The index for the reference fasta file.", category: "required"} + ampliconIntervals: {description: "An interval list describinig the coordinates of the amplicons sequenced.", + category: "required"} + targetIntervals: {description: "An interval list describing the coordinates of the targets sequenced.", + category: "required"} + basename: {description: "The basename/prefix of the output files (may include directories).", + category: "required"} + + memory: {description: "The amount of memory this job will use.", category: "advanced"} + javaXmx: {description: "The maximum memory available to the program. (Should be lower than `memory` to accommodate JVM overhead.", + category: "advanced"} + dockerImage: {description: "The docker image used for this task. Changing this may result in errors which the developers may choose not to address.", + category: "advanced"} + } } # Combine multiple recalibrated BAM files from scattered ApplyRecalibration runs diff --git a/scripts b/scripts index fc603e5..0817a9d 160000 --- a/scripts +++ b/scripts @@ -1 +1 @@ -Subproject commit fc603e5d408b89b99297fb5737586c059c5f9df6 +Subproject commit 0817a9dad46ff031ada83944bfc5f7c6b88b9d13 -- GitLab