From 975ffae2a073368214d276da0d50f47c89e3b8ac Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Wed, 11 Nov 2015 09:06:50 -0800 Subject: [PATCH 1/6] start pRESTO wrapping --- tools/pRESTO/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 tools/pRESTO/.keep diff --git a/tools/pRESTO/.keep b/tools/pRESTO/.keep new file mode 100644 index 000000000..e69de29bb From b3590082bd1674b5b293e337df8f287c04b8518c Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Wed, 11 Nov 2015 09:08:06 -0800 Subject: [PATCH 2/6] directory for pRESTO workflow as well --- workflows/pRESTO/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 workflows/pRESTO/.keep diff --git a/workflows/pRESTO/.keep b/workflows/pRESTO/.keep new file mode 100644 index 000000000..e69de29bb From d701c43f9c7b469d681d330bb3abf89054761739 Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Wed, 11 Nov 2015 10:51:49 -0800 Subject: [PATCH 3/6] add Dockerfile --- tools/pRESTO/.dockerignore | 1 + tools/pRESTO/.keep | 0 tools/pRESTO/Dockerfile | 19 +++++++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 tools/pRESTO/.dockerignore delete mode 100644 tools/pRESTO/.keep create mode 100644 tools/pRESTO/Dockerfile diff --git a/tools/pRESTO/.dockerignore b/tools/pRESTO/.dockerignore new file mode 100644 index 000000000..ceb98d814 --- /dev/null +++ b/tools/pRESTO/.dockerignore @@ -0,0 +1 @@ +*.cwl diff --git a/tools/pRESTO/.keep b/tools/pRESTO/.keep deleted file mode 100644 index e69de29bb..000000000 diff --git a/tools/pRESTO/Dockerfile b/tools/pRESTO/Dockerfile new file mode 100644 index 000000000..03f7103a0 --- /dev/null +++ b/tools/pRESTO/Dockerfile @@ -0,0 +1,19 @@ +FROM debian:testing +RUN apt-get -y update && apt-get install -y --no-install-recommends \ + muscle \ + vsearch \ + python-biopython \ + python-numpy \ + python-scipy \ + python-numpy \ + python-pandas \ + curl \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* +ENV p_MAJOR=0 +ENV p_MINOR=4 +ENV p_PATCH=8 +ENV p_ARCHIVE=pRESTO_v${p_MAJOR}.${p_MINOR}.${p_PATCH}.tar.gz +RUN curl -SL \ + "http://clip.med.yale.edu/presto/downloadHelper.php?dbTable=presto&downloadFile=${p_ARCHIVE}" \ + | tar xzC /usr/local From 6949d81809e09f2581811d72c8eed833729f4977 Mon Sep 17 00:00:00 2001 From: johnfonner Date: Wed, 11 Nov 2015 13:16:56 -0600 Subject: [PATCH 4/6] MaskPrimers.py.cwl in progress --- tools/pRESTO/MaskPrimers.py.cwl | 100 ++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 tools/pRESTO/MaskPrimers.py.cwl diff --git a/tools/pRESTO/MaskPrimers.py.cwl b/tools/pRESTO/MaskPrimers.py.cwl new file mode 100644 index 000000000..bd4dfe3c5 --- /dev/null +++ b/tools/pRESTO/MaskPrimers.py.cwl @@ -0,0 +1,100 @@ +class: CommandLineTool +id: MaskPrimers.py +label: pRESTO MaskPrimers.py + +description: | + usage: MaskPrimers.py [-h] [-v] ... + + Removes primers and annotates sequences with primer and barcode identifiers + + optional arguments: + -h, --help show this help message and exit + -v, --version show program's version number and exit + + subcommands: + Alignment method + align Find primer matches using pairwise local alignment + score Find primer matches by scoring primers at a fixed position + + output files: + mask-pass processed reads with successful primer matches. + mask-fail raw reads failing primer identification. + + output annotation fields: + SEQORIENT the orientation of the output sequence. Either F (input) + or RC (reverse complement of input). + PRIMER name of the best primer match. + BARCODE the sequence preceding the primer match. Only output when + the --barcode flag is specified. + +requirements: + +inputs: + - id: "#subcommand" + type: enum + symbols: ["score", "align"] + inputBinding: + position: 0 + + - id: "#input_files" + type: File + inputBinding: + prefix: "-s" + + - id: "#primer_file" + type: File + inputBinding: + prefix: "-p" + + - id: "#mode" + type: enum + symbols: ["cut","mask","trim","tag"] + inputBinding: + prefix: "--mode" + + - id: "#barcode" + type: boolean + inputBinding: + prefix: "--barcode" + + - id: "#start" + type: int + inputBinding: + prefix: "--start" + + - id: "#maxerror" + type: float + inputBinding: + prefix: "--maxerror" + + - id: "#nproc" + type: int + inputBinding: + prefix: "--nproc" + + - id: "#outname" + type: string + inputBinding: + prefix: "--outname" + + - id: "#outdir" + type: string + inputBinding: + prefix: "--outdir" + + - id: "#pipeline_log" + type: string + inputBinding: + prefix: "--outdir" + + - id: "#error_log" + type: string + inputBinding: + prefix: "--outdir" + + +outputs: + - id: "#outputs" + type: + +# _primers-pass.fastq From f4e2514d5d3436a391195838f2ae59276179660b Mon Sep 17 00:00:00 2001 From: johnfonner Date: Wed, 11 Nov 2015 17:07:03 -0600 Subject: [PATCH 5/6] MaskPrimers.py.cwl untested, but should be close to complete for a first pass --- tools/pRESTO/MaskPrimers.py.cwl | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/tools/pRESTO/MaskPrimers.py.cwl b/tools/pRESTO/MaskPrimers.py.cwl index bd4dfe3c5..b6031cf8f 100644 --- a/tools/pRESTO/MaskPrimers.py.cwl +++ b/tools/pRESTO/MaskPrimers.py.cwl @@ -28,6 +28,7 @@ description: | the --barcode flag is specified. requirements: + - import: node-engine.cwl inputs: - id: "#subcommand" @@ -79,22 +80,33 @@ inputs: - id: "#outdir" type: string - inputBinding: - prefix: "--outdir" - - - id: "#pipeline_log" - type: string + default:"outdir" inputBinding: prefix: "--outdir" - id: "#error_log" type: string - inputBinding: - prefix: "--outdir" + default: "Pipeline.err" + - id: "#pipeline_log" + type: string + default: "Pipeline.log" outputs: - id: "#outputs" - type: + type: File + outputBinding: + glob: + engine: "node-engine.cwl" + script: > + $job.outname + '_quality-pass.fastq' + +stdout: + engine: cwl:JsonPointer + script: /job/pipeline_log + +# stderr: +# engine: cwl:JsonPointer +# script: /job/error_log # _primers-pass.fastq From 33a09ad6a1e8f146f322e493531ba0d4f0540d30 Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Wed, 9 Dec 2015 09:27:37 -0800 Subject: [PATCH 6/6] update .dockerignore --- tools/pRESTO/.dockerignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/pRESTO/.dockerignore b/tools/pRESTO/.dockerignore index ceb98d814..72e8ffc0d 100644 --- a/tools/pRESTO/.dockerignore +++ b/tools/pRESTO/.dockerignore @@ -1 +1 @@ -*.cwl +*