From 65f95a301aa57221b414f81b349700b0a7eca9bd Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Tue, 15 Nov 2016 11:06:08 +0200 Subject: [PATCH] Squashed 'cwltool/schemas/' changes from 1550753..aa320ec aa320ec Merge pull request #342 from common-workflow-language/fix-mystery-package-errors 3c6eaff Update for rename of argparse2cwl to argparse2tool b14404b remove errant jsonldPredicate 7f116da Merge pull request #339 from common-workflow-language/dockerOutputDirectory 4f65d1f Add test for dockerOutputDirectory option of DockerRequirement. cb1f928 Merge pull request #335 from common-workflow-language/output-literals d8b6c8f Add tests for file and directory literals in output as produced by expression tool. ee3bb1c Merge pull request #324 from common-workflow-language/secondaryfiles-array 5e6c2d4 Add NLeSC's Xenon cbe1c8d Merge pull request #334 from StarvingMarvin/master 8300e43 output ids must start with '#' in draft-2 f87d218 draft-3 test fixes: explicit output for args 8b10319 Fixes for draft-2 tests: adding explicit args output 83ed4b4 Merge remote-tracking branch 'rabix-cwl/master' e0a5e7c Merge pull request #328 from StarvingMarvin/master d906c4a dir4 test fix 21bdcaf Merge remote-tracking branch 'upstream/master' dee0f4e Disabled checksum check for listing input dir fc4cb0f Added args output and empty.json for null jobs a4950f4 Update tools list 8e1d67c Add Rabix Bunny CI badge 2a5b95e fixing mentions to draft3/4 1356c45 Add test for secondaryFiles with arrays b60125b Single instead of double quotes in doc 179835b Merge pull request #319 from common-workflow-language/test-cwl-out2 ed40737 Add additional test for cwl.output.json behavior. a217bb6 Merge pull request #317 from StarvingMarvin/master 8dd69f2 fixing test in v1.0 and v1.1.0-dev1 e831c20 Merge pull request #314 from common-workflow-language/test-requirements-on-steps 8cad6f1 Add test for requirements/hints on workflow steps. 7679adb Merge pull request #308 from common-workflow-language/embedded-subworkflow-test 1582677 Tighten up formatting 779c2d4 Add test for embedded subworkflow e22a9c2 Merge pull request #307 from alaindomissy/patch-3 125cb5f Update UserGuide.yml 99f4f9f Merge pull request #303 from common-workflow-language/include-stdin-in-docs 5324dbb put stdin shortcut in correct place git-subtree-dir: cwltool/schemas git-subtree-split: aa320ec672f99419477ac4da64f9e5a5d386d2ce --- README.md | 10 +- draft-2/draft-2/binding-test.cwl | 6 +- draft-2/draft-2/cat1-testcli.cwl | 26 +++-- draft-2/draft-2/tmap-tool.cwl | 21 ++-- draft-3/draft-3/binding-test.cwl | 6 +- draft-3/draft-3/cat1-testcli.cwl | 22 ++-- draft-3/draft-3/tmap-tool.cwl | 25 +++-- v1.0/CommandLineTool.yml | 1 - v1.0/UserGuide.yml | 4 +- v1.0/concepts.md | 2 +- v1.0/conformance_test_v1.0.yaml | 106 ++++++++++++++++-- v1.0/salad/README.rst | 4 +- v1.0/v1.0/binding-test.cwl | 3 +- v1.0/v1.0/cat1-testcli.cwl | 2 +- v1.0/v1.0/cat5-tool.cwl | 4 +- v1.0/v1.0/count-lines10-wf.cwl | 22 ++++ v1.0/v1.0/dir4.cwl | 4 +- v1.0/v1.0/dir7.cwl | 12 ++ v1.0/v1.0/dir7.yml | 5 + .../v1.0/docker-array-secondaryfiles-job.json | 12 ++ v1.0/v1.0/docker-array-secondaryfiles.cwl | 38 +++++++ v1.0/v1.0/docker-output-dir.cwl | 13 +++ v1.0/v1.0/env-wf1.cwl | 3 +- v1.0/v1.0/env-wf2.cwl | 3 +- v1.0/v1.0/env-wf3.cwl | 22 ++++ v1.0/v1.0/file-literal-ex.cwl | 11 ++ v1.0/v1.0/ref.fasta.fai | 5 + v1.0/v1.0/ref2.fasta | 10 ++ v1.0/v1.0/ref2.fasta.fai | 5 + v1.0/v1.0/test-cwl-out2.cwl | 18 +++ v1.0/v1.0/tmap-tool.cwl | 3 +- v1.1.0-dev1/CommandLineTool.yml | 30 ++++- v1.1.0-dev1/Process.yml | 5 + v1.1.0-dev1/Workflow.yml | 52 +++++---- v1.1.0-dev1/conformance_test_v1.1.0-dev1.yaml | 2 +- 35 files changed, 422 insertions(+), 95 deletions(-) create mode 100755 v1.0/v1.0/count-lines10-wf.cwl create mode 100644 v1.0/v1.0/dir7.cwl create mode 100644 v1.0/v1.0/dir7.yml create mode 100644 v1.0/v1.0/docker-array-secondaryfiles-job.json create mode 100644 v1.0/v1.0/docker-array-secondaryfiles.cwl create mode 100644 v1.0/v1.0/docker-output-dir.cwl create mode 100644 v1.0/v1.0/env-wf3.cwl create mode 100644 v1.0/v1.0/file-literal-ex.cwl create mode 100644 v1.0/v1.0/ref.fasta.fai create mode 100644 v1.0/v1.0/ref2.fasta create mode 100644 v1.0/v1.0/ref2.fasta.fai create mode 100644 v1.0/v1.0/test-cwl-out2.cwl diff --git a/README.md b/README.md index 901d7eb18..99884a78f 100644 --- a/README.md +++ b/README.md @@ -40,16 +40,18 @@ Please cite https://dx.doi.org/10.6084/m9.figshare.3115156.v2 ## Implementations -|Software|Description|CWL support|Platform support|Maturity| +|Software|Description|CWL support|Platform support|Platform Maturity| |--------|-----------|-----------|--------|--------| |[cwltool](https://github.com/common-workflow-language/cwltool)|Reference implementation of CWL|[![Build Status](https://ci.commonwl.org/job/cwltool-conformance/badge/icon)](http://ci.commonwl.org/job/cwltool-conformance/lastBuild/testReport/)|Linux, OS X, local execution only|Production| |[Arvados](https://arvados.org)|Distributed computing platform for data analysis on massive data sets. [Using CWL on Arvados](http://doc.arvados.org/user/cwl/cwl-runner.html)|[![Build Status](https://ci.commonwl.org/job/arvados-conformance/badge/icon)](http://ci.commonwl.org/job/arvados-conformance/lastBuild/testReport/)|AWS, GCP, Azure, Slurm|Production| |[Toil](https://github.com/BD2KGenomics/toil)|Toil is a workflow engine entirely written in Python.|[![Build Status](https://ci.commonwl.org/job/toil-conformance/badge/icon)](http://ci.commonwl.org/job/toil-conformance/lastBuild/testReport/)|AWS, GCP, Azure, OpenStack, Grid Engine, Mesos|Production| +|[Rabix Bunny](https://github.com/rabix/bunny)|Reproducible Analyses for Bioinformatics|[![Build Status](https://ci.commonwl.org/buildStatus/icon?job=rabix-conformance)](https://ci.commonwl.org/job/rabix-conformance/)|Java|alpha| |[Apache Taverna](http://taverna.incubator.apache.org/)|Domain-independent Workflow Management System|[alpha](https://issues.apache.org/jira/browse/TAVERNA-900)|Java|Production| |[Galaxy](https://galaxyproject.org/)|Web-based platform for data intensive biomedical research.|[alpha](https://github.com/common-workflow-language/galaxy)|Python|Production| |[AWE](https://github.com/MG-RAST/AWE)|Workflow and resource management system for bioinformatics data analysis.|[alpha](https://github.com/wgerlach/AWE)|Go|Production| |[Funnel](https://github.com/bmeg/funnel)|Use Google Genomics Pipeline API with CWL|alpha|GCP|alpha| -|[Rabix Bunny](https://github.com/rabix/bunny)|Reproducible Analyses for Bioinformatics|alpha|Java|alpha| +|[xenon-cwl-runner](https://github.com/NLeSC/xenon-cwl-runner)|Run CWL workflows using Xenon|alpha|[any Xenon backend](http://nlesc.github.io/Xenon/): local, ssh, SLURM, Torque, Grid Engine|Production| + ## Repositories of CWL Tools and Workflows @@ -64,10 +66,12 @@ Please cite https://dx.doi.org/10.6084/m9.figshare.3115156.v2 |--------|-----------| |[cwltest](https://github.com/common-workflow-language/cwltest)|CWL testing framework, automated testing of tools and workflows written with CWL| |[cwl-upgrader](https://github.com/common-workflow-language/cwl-upgrader)|Upgrade CWL documents from draft-3 to v1.0| -|[argparse2cwl](https://github.com/common-workflow-language/gxargparse#argparse2cwl)|Generate CWL CommandLineTool wrapper from Python programs that use argparse. Also supports [click](http://click.pocoo.org/5/) argument parser.| +|[argparse2tool](https://github.com/erasche/argparse2tool#cwl-specific-functionality)|Generate CWL CommandLineTool wrappers (and/or Galaxy tool descriptions) from Python programs that use argparse. Also supports the [click](http://click.pocoo.org/5/) argument parser.| |[cwl2argparse](https://github.com/common-workflow-language/cwl2argparse)|Generate Python argparse code from CWL CommandLineTool description.| |[pypi2cwl](https://github.com/common-workflow-language/pypi2cwl)|Automatically run argparse2cwl on any package in PyPi| |[cwlavro](https://github.com/common-workflow-language/cwlavro)|Java classes for loading CWL documents| +|[acd2cwl](https://github.com/common-workflow-language/acd2cwl)|CWL generator for ACD (EMBOSS) files | +|[CWLviewer](https://github.com/MarkRobbo/CWLViewer)|A web application to view and share Common Workflow Language workflows| ## Support, Community and Contributing diff --git a/draft-2/draft-2/binding-test.cwl b/draft-2/draft-2/binding-test.cwl index cd3857861..5037d5432 100755 --- a/draft-2/draft-2/binding-test.cwl +++ b/draft-2/draft-2/binding-test.cwl @@ -22,7 +22,11 @@ inputs: inputBinding: position: -1 -outputs: [] +outputs: + - id: "#args" + type: + type: array + items: string baseCommand: python arguments: ["bwa", "mem"] diff --git a/draft-2/draft-2/cat1-testcli.cwl b/draft-2/draft-2/cat1-testcli.cwl index 410833193..5eb3cbb30 100755 --- a/draft-2/draft-2/cat1-testcli.cwl +++ b/draft-2/draft-2/cat1-testcli.cwl @@ -17,18 +17,24 @@ } }, { - id: "#args.py", - type: File, - default: { - class: File, - path: args.py - }, - inputBinding: { - position: -1 - } + "id": "#args.py", + "type": "File", + "default": { + "class": "File", + "path": "args.py" + }, + "inputBinding": { + "position": -1 + } } ], - "outputs": [], + "outputs": [{ + "id": "#args", + "type": { + "type": "array", + "items": "string" + } + }], "baseCommand": "python", "arguments": ["cat"] } diff --git a/draft-2/draft-2/tmap-tool.cwl b/draft-2/draft-2/tmap-tool.cwl index 3f9ee02c5..364d3d958 100755 --- a/draft-2/draft-2/tmap-tool.cwl +++ b/draft-2/draft-2/tmap-tool.cwl @@ -18,14 +18,14 @@ } }, { - id: "#args.py", - type: File, - default: { - class: File, - path: args.py + "id": "#args.py", + "type": "File", + "default": { + "class": "File", + "path": "args.py" }, - inputBinding: { - position: -1 + "inputBinding": { + "position": -1 } } ], @@ -36,6 +36,13 @@ "glob": "output.sam" }, "type": ["null", "File"] + }, + { + "id": "#args", + "type": { + "type": "array", + "items": "string" + } } ], "requirements": [ diff --git a/draft-3/draft-3/binding-test.cwl b/draft-3/draft-3/binding-test.cwl index 50271f53f..222a6c858 100755 --- a/draft-3/draft-3/binding-test.cwl +++ b/draft-3/draft-3/binding-test.cwl @@ -23,7 +23,11 @@ inputs: inputBinding: position: -1 -outputs: [] +outputs: + - id: args + type: + type: array + items: string baseCommand: python arguments: ["bwa", "mem"] diff --git a/draft-3/draft-3/cat1-testcli.cwl b/draft-3/draft-3/cat1-testcli.cwl index 31f3a94d6..a29cdc4bb 100755 --- a/draft-3/draft-3/cat1-testcli.cwl +++ b/draft-3/draft-3/cat1-testcli.cwl @@ -18,18 +18,24 @@ } }, { - id: "args.py", - type: File, - default: { - class: File, - path: args.py + "id": "args.py", + "type": "File", + "default": { + "class": "File", + "path": "args.py" }, - inputBinding: { - position: -1 + "inputBinding": { + "position": -1 } } ], - "outputs": [], + "outputs": [{ + "id": "args", + "type": { + "type": "array", + "items": "string" + } + }], "baseCommand": "python", "arguments": ["cat"] } diff --git a/draft-3/draft-3/tmap-tool.cwl b/draft-3/draft-3/tmap-tool.cwl index 514816a9f..704cd0b48 100755 --- a/draft-3/draft-3/tmap-tool.cwl +++ b/draft-3/draft-3/tmap-tool.cwl @@ -20,15 +20,15 @@ } }, { - id: "#args.py", - type: File, - default: { - class: File, - path: args.py - }, - inputBinding: { - position: -1 - } + "id": "#args.py", + "type": "File", + "default": { + "class": "File", + "path": "args.py" + }, + "inputBinding": { + "position": -1 + } } ], "outputs": [ @@ -38,6 +38,13 @@ "glob": "output.sam" }, "type": ["null", "File"] + }, + { + "id": "args", + "type": { + "type": "array", + "items": "string" + } } ], "requirements": [ diff --git a/v1.0/CommandLineTool.yml b/v1.0/CommandLineTool.yml index 3e85541c1..181c51cf3 100644 --- a/v1.0/CommandLineTool.yml +++ b/v1.0/CommandLineTool.yml @@ -694,7 +694,6 @@ $graph: - name: package type: string doc: "The common name of the software to be configured." - jsonldPredicate: "@id" - name: version type: string[]? doc: "The (optional) version of the software to configured." diff --git a/v1.0/UserGuide.yml b/v1.0/UserGuide.yml index 4f3f05b27..9e3fd5290 100644 --- a/v1.0/UserGuide.yml +++ b/v1.0/UserGuide.yml @@ -290,8 +290,8 @@ - | ## Parameter references - In a previous example, we used extracted a file using the "tar" program. - However, that example was very limited becuase it assumed that the file + In a previous example, we extracted a file using the "tar" program. + However, that example was very limited because it assumed that the file we were interested in was called "hello.txt". In this example, you will see how to reference the value of input parameters dynamically from other fields. diff --git a/v1.0/concepts.md b/v1.0/concepts.md index 773feb533..cc4df5ae2 100644 --- a/v1.0/concepts.md +++ b/v1.0/concepts.md @@ -89,7 +89,7 @@ preprocessing steps described in the [Semantic Annotations for Linked Avro Data (SALAD) Specification](SchemaSalad.html). An implementation may formally validate the structure of a CWL document using SALAD schemas located at -https://github.com/common-workflow-language/common-workflow-language/tree/master/draft-4 +https://github.com/common-workflow-language/common-workflow-language/tree/master/v1.0 ## Identifiers diff --git a/v1.0/conformance_test_v1.0.yaml b/v1.0/conformance_test_v1.0.yaml index 21377bb14..4c5a5ef8d 100644 --- a/v1.0/conformance_test_v1.0.yaml +++ b/v1.0/conformance_test_v1.0.yaml @@ -63,7 +63,7 @@ output_file: class: File checksum: sha1$47a013e660d408619d894b20806b1d5086aab03b - location: + location: Any size: 13 doc: Test command execution in Docker with simplified syntax stdout redirection @@ -77,7 +77,7 @@ tool: v1.0/cat3-tool-mediumcut.cwl doc: Test command execution in Docker with stdout redirection -- job: +- job: v1.0/empty.json tool: v1.0/egrep-stderr.cwl doc: Test command line with stderr redirection output: @@ -87,7 +87,7 @@ size: 84 location: error.txt -- job: +- job: v1.0/empty.json tool: v1.0/egrep-stderr-shortcut.cwl doc: Test command line with stderr redirection, brief syntax output: @@ -103,7 +103,7 @@ size: 84 checksum: sha1$cec7b8746a78c42060c96505887449bca0142976 location: std.err - job: + job: v1.0/empty.json tool: v1.0/egrep-stderr-mediumcut.cwl doc: Test command line with stderr redirection, named brief syntax @@ -287,6 +287,16 @@ tool: v1.0/env-wf2.cwl doc: Test requirements override hints +- job: v1.0/env-job.json + output: + out: + class: File + checksum: sha1$cdc1e84968261d6a7575b5305945471f8be199b6 + location: out + size: 9 + tool: v1.0/env-wf3.cwl + doc: Test requirements on workflow steps + - job: v1.0/empty.json output: {count_output: 16} tool: v1.0/count-lines9-wf.cwl @@ -649,7 +659,23 @@ } } tool: v1.0/test-cwl-out.cwl - doc: Test support for reading cwl.output.json when running in Docker container + doc: | + Test support for reading cwl.output.json when running in a Docker container + and just 'path' is provided. + +- job: v1.0/empty.json + output: { + "foo": { + "location": "foo", + "class": "File", + "checksum": "sha1$f1d2d2f924e986ac86fdf7b36c94bcdf32beec15", + "size": 4 + } + } + tool: v1.0/test-cwl-out2.cwl + doc: | + Test support for reading cwl.output.json when running in a Docker container + and just 'location' is provided. - job: v1.0/abc.json output: @@ -763,10 +789,10 @@ - job: v1.0/dir4-job.yml output: { "outlist": { - "checksum": "sha1$2ab6f189e84753c05a23413fbf6b6fbf4c53489f", - "size": 90, - "location": "output.txt", - "class": "File" + "checksum": "sha1$13cda8661796ae241da3a18668fb552161a72592", + "size": 20, + "location": "output.txt", + "class": "File" } } tool: v1.0/dir4.cwl @@ -883,3 +909,65 @@ "size": 12010 tool: v1.0/initialworkdirrequirement-docker-out.cwl doc: Test output of InitialWorkDir + +- job: v1.0/wc-job.json + output: {count_output: 16} + tool: v1.0/count-lines10-wf.cwl + doc: Test embedded subworkflow + +- job: v1.0/docker-array-secondaryfiles-job.json + output: { + "bai_list": { + "checksum": "sha1$081fc0e57d6efa5f75eeb237aab1d04031132be6", + "location": "fai.list", + "class": "File", + "size": 386 + } + } + tool: v1.0/docker-array-secondaryfiles.cwl + doc: Test secondaryFiles on array of files. + +- job: v1.0/dir7.yml + output: { + "dir": { + "location": "a_directory", + "class": "Directory", + "listing": [ + { + "class": "File", + "location": "whale.txt", + "checksum": "sha1$327fc7aedf4f6b69a42a7c8b808dc5a7aff61376", + "size": 1111 + }, + { + "class": "File", + "location": "hello.txt", + "checksum": "sha1$47a013e660d408619d894b20806b1d5086aab03b", + "size": 13 + } + ] + } + } + tool: v1.0/dir7.cwl + doc: Test directory literal output created by ExpressionTool + +- job: v1.0/empty.json + output: + lit: + location: "a_file" + class: "File" + checksum: "sha1$fea23663b9c8ed71968f86415b5ec091bb111448" + size: 19 + tool: v1.0/file-literal-ex.cwl + doc: Test file literal output created by ExpressionTool + +- job: v1.0/empty.json + output: + "thing": { + "checksum": "sha1$da39a3ee5e6b4b0d3255bfef95601890afd80709", + "location": "thing", + "class": "File", + "size": 0 + } + tool: v1.0/docker-output-dir.cwl + doc: Test dockerOutputDirectory diff --git a/v1.0/salad/README.rst b/v1.0/salad/README.rst index 11d1b06b6..e66427cdd 100644 --- a/v1.0/salad/README.rst +++ b/v1.0/salad/README.rst @@ -70,6 +70,6 @@ provides for robust support of inline documentation. .. _JSON-LD: http://json-ld.org .. _Avro: http://avro.apache.org .. _metaschema: https://github.com/common-workflow-language/schema_salad/blob/master/schema_salad/metaschema/metaschema.yml -.. _specification: http://www.commonwl.org/draft-3/SchemaSalad.html -.. _Language: https://github.com/common-workflow-language/common-workflow-language/blob/master/draft-3/CommandLineTool.yml +.. _specification: http://www.commonwl.org/v1.0/SchemaSalad.html +.. _Language: https://github.com/common-workflow-language/common-workflow-language/blob/master/v1.0/CommandLineTool.yml .. _RDF: https://www.w3.org/RDF/ diff --git a/v1.0/v1.0/binding-test.cwl b/v1.0/v1.0/binding-test.cwl index 8415dc414..99f812fb1 100755 --- a/v1.0/v1.0/binding-test.cwl +++ b/v1.0/v1.0/binding-test.cwl @@ -23,7 +23,8 @@ inputs: inputBinding: position: -1 -outputs: [] +outputs: + args: string[] baseCommand: python arguments: ["bwa", "mem"] diff --git a/v1.0/v1.0/cat1-testcli.cwl b/v1.0/v1.0/cat1-testcli.cwl index 06782c2b9..9558ed82c 100755 --- a/v1.0/v1.0/cat1-testcli.cwl +++ b/v1.0/v1.0/cat1-testcli.cwl @@ -29,7 +29,7 @@ } } ], - "outputs": [], + "outputs": [{"id": "args", "type": "string[]"}], "baseCommand": "python", "arguments": ["cat"] } diff --git a/v1.0/v1.0/cat5-tool.cwl b/v1.0/v1.0/cat5-tool.cwl index e5ae681cc..c106cd602 100755 --- a/v1.0/v1.0/cat5-tool.cwl +++ b/v1.0/v1.0/cat5-tool.cwl @@ -1,11 +1,13 @@ #!/usr/bin/env cwl-runner +$namespaces: + ex: http://example.com/ cwlVersion: v1.0 class: CommandLineTool doc: "Print the contents of a file to stdout using 'cat' running in a docker container." hints: DockerRequirement: dockerPull: "debian:wheezy" - BlibberBlubberFakeRequirement: + ex:BlibberBlubberFakeRequirement: fakeField: fraggleFroogle inputs: file1: diff --git a/v1.0/v1.0/count-lines10-wf.cwl b/v1.0/v1.0/count-lines10-wf.cwl new file mode 100755 index 000000000..63d9f0ff1 --- /dev/null +++ b/v1.0/v1.0/count-lines10-wf.cwl @@ -0,0 +1,22 @@ +#!/usr/bin/env cwl-runner +class: Workflow +cwlVersion: v1.0 +inputs: + file1: File +outputs: + count_output: {type: int, outputSource: step1/count_output} +requirements: + SubworkflowFeatureRequirement: {} +steps: + step1: + in: {file1: file1} + out: [count_output] + run: + class: Workflow + inputs: + file1: File + outputs: + count_output: {type: int, outputSource: step2/output} + steps: + step1: {run: wc-tool.cwl, in: {file1: file1}, out: [output]} + step2: {run: parseInt-tool.cwl, in: {file1: step1/output}, out: [output]} diff --git a/v1.0/v1.0/dir4.cwl b/v1.0/v1.0/dir4.cwl index 1e3e862a5..a585d98ad 100644 --- a/v1.0/v1.0/dir4.cwl +++ b/v1.0/v1.0/dir4.cwl @@ -9,9 +9,9 @@ outputs: type: File outputBinding: glob: output.txt -arguments: ["cd", "$(inputs.inf.dirname)", +arguments: ["cd", "$(inputs.inf.dirname)/xtestdir", {shellQuote: false, valueFrom: "&&"}, "find", ".", {shellQuote: false, valueFrom: "|"}, "sort"] -stdout: output.txt \ No newline at end of file +stdout: output.txt diff --git a/v1.0/v1.0/dir7.cwl b/v1.0/v1.0/dir7.cwl new file mode 100644 index 000000000..88171e6dd --- /dev/null +++ b/v1.0/v1.0/dir7.cwl @@ -0,0 +1,12 @@ +class: ExpressionTool +cwlVersion: v1.0 +requirements: + InlineJavascriptRequirement: {} +inputs: + files: File[] +outputs: + dir: Directory +expression: | + ${ + return {"dir": {"class": "Directory", "basename": "a_directory", "listing": inputs.files}}; + } \ No newline at end of file diff --git a/v1.0/v1.0/dir7.yml b/v1.0/v1.0/dir7.yml new file mode 100644 index 000000000..7ad068585 --- /dev/null +++ b/v1.0/v1.0/dir7.yml @@ -0,0 +1,5 @@ +files: + - class: File + location: hello.txt + - class: File + location: whale.txt diff --git a/v1.0/v1.0/docker-array-secondaryfiles-job.json b/v1.0/v1.0/docker-array-secondaryfiles-job.json new file mode 100644 index 000000000..5d178fc63 --- /dev/null +++ b/v1.0/v1.0/docker-array-secondaryfiles-job.json @@ -0,0 +1,12 @@ +{ + "fasta_path": [ + { + "class": "File", + "location": "ref.fasta" + }, + { + "class": "File", + "location": "ref2.fasta" + } + ] +} diff --git a/v1.0/v1.0/docker-array-secondaryfiles.cwl b/v1.0/v1.0/docker-array-secondaryfiles.cwl new file mode 100644 index 000000000..4b1597563 --- /dev/null +++ b/v1.0/v1.0/docker-array-secondaryfiles.cwl @@ -0,0 +1,38 @@ +#!/usr/bin/env cwl-runner + +cwlVersion: v1.0 + +requirements: + - class: DockerRequirement + dockerPull: debian:8 + - class: InlineJavascriptRequirement + - class: ShellCommandRequirement + +class: CommandLineTool + +inputs: + fasta_path: + type: + type: array + items: File + secondaryFiles: + - .fai + +outputs: + bai_list: + type: File + outputBinding: + glob: "fai.list" + +arguments: + - valueFrom: ${ + var fai_list = ""; + for (var i = 0; i < inputs.fasta_path.length; i ++) { + fai_list += " cat " + inputs.fasta_path[i].path +".fai" + " >> fai.list && " + } + return fai_list.slice(0,-3) + } + position: 1 + shellQuote: false + +baseCommand: [] diff --git a/v1.0/v1.0/docker-output-dir.cwl b/v1.0/v1.0/docker-output-dir.cwl new file mode 100644 index 000000000..f2bc3c5fc --- /dev/null +++ b/v1.0/v1.0/docker-output-dir.cwl @@ -0,0 +1,13 @@ +class: CommandLineTool +cwlVersion: v1.0 +requirements: + DockerRequirement: + dockerPull: debian:8 + dockerOutputDirectory: /other +inputs: [] +outputs: + thing: + type: File + outputBinding: + glob: thing +baseCommand: ["touch", "/other/thing"] diff --git a/v1.0/v1.0/env-wf1.cwl b/v1.0/v1.0/env-wf1.cwl index f5cd51715..9a8487f2a 100644 --- a/v1.0/v1.0/env-wf1.cwl +++ b/v1.0/v1.0/env-wf1.cwl @@ -11,8 +11,7 @@ outputs: outputSource: step1/out requirements: - - class: SubworkflowFeatureRequirement - - class: EnvVarRequirement + EnvVarRequirement: envDef: TEST_ENV: override diff --git a/v1.0/v1.0/env-wf2.cwl b/v1.0/v1.0/env-wf2.cwl index 8a89b5796..2c43e5b65 100644 --- a/v1.0/v1.0/env-wf2.cwl +++ b/v1.0/v1.0/env-wf2.cwl @@ -11,8 +11,7 @@ outputs: outputSource: step1/out requirements: - - class: SubworkflowFeatureRequirement - - class: EnvVarRequirement + EnvVarRequirement: envDef: TEST_ENV: override diff --git a/v1.0/v1.0/env-wf3.cwl b/v1.0/v1.0/env-wf3.cwl new file mode 100644 index 000000000..4fd2dc3b5 --- /dev/null +++ b/v1.0/v1.0/env-wf3.cwl @@ -0,0 +1,22 @@ +#!/usr/bin/env cwl-runner +class: Workflow +cwlVersion: v1.0 + +inputs: + in: string + +outputs: + out: + type: File + outputSource: step1/out + +steps: + step1: + run: env-tool2.cwl + requirements: + EnvVarRequirement: + envDef: + TEST_ENV: override + in: + in: in + out: [out] diff --git a/v1.0/v1.0/file-literal-ex.cwl b/v1.0/v1.0/file-literal-ex.cwl new file mode 100644 index 000000000..9f809f34f --- /dev/null +++ b/v1.0/v1.0/file-literal-ex.cwl @@ -0,0 +1,11 @@ +class: ExpressionTool +cwlVersion: v1.0 +requirements: + InlineJavascriptRequirement: {} +inputs: [] +outputs: + lit: File +expression: | + ${ + return {"lit": {"class": "File", "basename": "a_file", "contents": "Hello file literal."}}; + } \ No newline at end of file diff --git a/v1.0/v1.0/ref.fasta.fai b/v1.0/v1.0/ref.fasta.fai new file mode 100644 index 000000000..e5d66331d --- /dev/null +++ b/v1.0/v1.0/ref.fasta.fai @@ -0,0 +1,5 @@ +0$chr1$9001$11468 2567 19 2567 2568 +1$chr1$53713$55817 2204 2607 2204 2205 +2$chr1$65161$67630 2569 4832 2569 2570 +3$chr1$82792$85041 2349 7422 2349 2350 +4$chr1$98000$100116 2216 9793 2216 2217 diff --git a/v1.0/v1.0/ref2.fasta b/v1.0/v1.0/ref2.fasta new file mode 100644 index 000000000..bad272557 --- /dev/null +++ b/v1.0/v1.0/ref2.fasta @@ -0,0 +1,10 @@ +>0$chr1$9001$11468 +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCTAACCCTAACCCTAACCCTAACCCTAACCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCTAACCCTAACCCTAAACCCTAAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCAACCCCAACCCCAACCCCAACCCCAACCCCAACCCTAACCCCTAACCCTAACCCTAACCCTACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCTAACCCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCTAACCCTAACCCTAACCCTAACCCTCGCGGTACCCTCAGCCGGCCCGCCCGCCCGGGTCTGACCTGAGGAGAACTGTGCTCCGCCTTCAGAGTACCACCGAAATCTGTGCAGAGGACAACGCAGCTCCGCCCTCGCGGTGCTCTCCGGGTCTGTGCTGAGGAGAACGCAACTCCGCCGTTGCAAAGGCGCGCCGCGCCGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGACACATGCTAGCGCGTCGGGGTGGAGGCGTGGCGCAGGCGCAGAGAGGCGCGCCGCGCCGGCGCAGGCGCAGAGACACATGCTACCGCGTCCAGGGGTGGAGGCGTGGCGCAGGCGCAGAGAGGCGCACCGCGCCGGCGCAGGCGCAGAGACACATGCTAGCGCGTCCAGGGGTGGAGGCGTGGCGCAGGCGCAGAGACGCAAGCCTACGGGCGGGGGTTGGGGGGGCGTGTGTTGCAGGAGCAAAGTCGCACGGCGCCGGGCTGGGGCGGGGGGAGGGTGGCGCCGTGCACGCGCAGAAACTCACGTCACGGTGGCGCGGCGCAGAGACGGGTAGAACCTCAGTAATCCGAAAAGCCGGGATCGACCGCCCCTTGCTTGCAGCCGGGCACTACAGGACCCGCTTGCTCACGGTGCTGTGCCAGGGCGCCCCCTGCTGGCGACTAGGGCAACTGCAGGGCTCTCTTGCTTAGAGTGGTGGCCAGCGCCCCCTGCTGGCGCCGGGGCACTGCAGGGCCCTCTTGCTTACTGTATAGTGGTGGCACGCCGCCTGCTGGCAGCTAGGGACATTGCAGGGTCCTCTTGCTCAAGGTGTAGTGGCAGCACGCCCACCTGCTGGCAGCTGGGGACACTGCCGGGCCCTCTTGCTCCAACAGTACTGGCGGATTATNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +>1$chr1$53713$55817 +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNATAGATGGAATAAATAAAATGTGAACTTAGGTAAATTATAAATTAATAAAGTATATTTTTAAAATTTCCATTTTAATTTCTGTTTAAATTAGAATAAGAAACAAAAACAACTATGTAATACGTGTGCAAAGCCCTGAACTGAGATTTGACTTTACCTTGAGCTTTGTCAGTTTACGATGCTATTTCAGTTTTGTGCTCAGATTTGAGTGATTGCAGGAAGAGAATAAATTTCTTTAATGCTGTCAAGACTTTAAATAGATACAGACAGAGCATTTTCACTTTTTCCTACATCTCTATTATTCTAAAAATGAGAACATTCCAAAAGTCAACCATCCAAGTTTATTCTAAATAGATGTGTAGAAATAACAGTTGTTTCACAGGAGACTAATCGCCCAAGGATATGTGTTTAGAGGTACTGGTTTCTTAAATAAGGTTTTCTAGTCAGGCAAAAGATTCCCTGGAGCTTATGCATCTGTGGTTGATATTTTGGGATAAGAATAAAGCTAGAAATGGTGAGGCATATTCAATTTCATTGAAGATTTCTGCATTCAAAATAAAAACTCTATTGAAGTTACACATACTTTTTTCATGTATTTGTTTCTACTGCTTTGTAAATTATAACAGCTCAATTAAGAGAAACCGTACCTATGCTATTTTGTCCTGTGATTCTCCAAGAACCTTCCTAAGTTATTCTACTTAATTGCTTTATCACTCATATGAATGGGAATTTCTTCTCTTAATTGCTGCTAATCTCCCCCATCTTCAAATACTCTACCGGGCTTCTGGAACACCACAGCTTCCTGGCTTTTTCTCCTACCTCCTGGGCAAGTCCTTCCCTGTGTCTTTTGTTGAGTGTTCCTCATCTGCTTAACTACCAATCAACCTATTGCCCCTAATTTGATCTTTGGCCTGTTTTCACTTAGATTCTATCCCTACGTATCACCCATTCCCACAGCTTTAATCACCATCTAAACACTAGGGGCTCTCAAACCTTGTATTTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTTCTTCCTCCTTTTCTTTCCTTTTCTTTCTTTCATTCTTTCTTTCTTTTTTAAGGGGCAGGGTCTCACTATGTTGCTGAGGCTGGTCTCAAACTCCTGACCTCAAGCAATCTGTCTGCTTCAGCCTCCCAAGTAGCTGAGAATACAGGGACAAGCCATTGCACCTGACCCTGGTACTATTTCTTGAGTTCCTGATCCACAGATCTAACCTCCTACTTTCCTGGATGCCACACAAGATCTTCCACTCAACAAGTCTGCAACTAAACTAGCCTTCCTCTTTTCAAACCTACTCTTCTTTCAGTGTTCTCAGTCACAATAATTTGTACCAACTAGTTACCTAGTTGCACAACCCAAAATCTGGGAAAAATAATAGATTTCTTTCTCCATAGTACCCCCAAATCAATAAATCATCAAGTCTTATTCTACCTTCCAAAGAGCCTTACATATGTTCCTTTATTTTCATCTGTAACACCACTATTCCTGTCTAAGCCTACCTATGTCATTTTTGGAAGAGAATATAGTCACCTATGCGACCTTCCCACTTAAAATCCTACTATTTACGCTTCAGTAAAAGAAAAAAAATTTTTAATCTAAGTATGTAATTCTTTTGCTGAAGACACTTCACTTGCTTCTGTGCCCTTAAACTGGTATGTTATCATGGTATAGTAGGCCATCCAAGACCTGGCTTCCTTCCTTTTTTTCAGTCTCAGAGAATAACATACTCTTTCCCTGCAACTCCAGATCCAATTTGGTTTTCTTTTACTTGCCTGGAAACTCCAAAATCTATCAACTCTGGGGCTTTCCACTAGCTAATCATTTTGTATACAATATTTGTCCTTCATGTTTTGCCTCTTAACATCTCAGCTTTCAGTTTCATCATTTTACCAGGGAGGCCTCCCAGAACCTGAGTCCAGAAGAGTTCCTTCCATTGTATATTCCTCTAGCACTACCTATTACCTCTTTTGTAAGACTAACAGCCCTCAAAATTTTTCATTCAGTGATGTCTTCCTCATTGCATTTTAAGTTCAACATGAGCAGGACTTTGTCGTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +>2$chr1$65161$67630 +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNAAATCGAAGCATTATTACTTACTCTCTTGTTAACCTATCTGGATTTTAATTTTGTAACTTTATTATATTTGTTTTGCTGTGATTCTTTAAAAAGCACCTTTAGACTCAGTGAGATAGCAAAAATATCCAAATAGGCCAAAAAATTGTGGCAATGTCCTCTCACTCAGGAAAATTCTGTGTGTTTTCTCTAATGGCCAAGGGAAAACTTGTGAGACTATAAAAGTTAGTCTCAGTACACAAAGCTCAGACTGGCTATTCCCAGATCTCTTCAGGTACATCTAGTCCATTCATAAAGGGCTTTTAATTAACCAAGTGGTTTACTAAAAAGGACAATTCACTACATATTATTCTCTTACAGTTTTTATGCCTCATTCTGTGAAAATTGCTGTAGTCTCTTCCAGTTATGAAGAAGGTAGGTGGAAACAAAGACAAAACACATATATTAGAAGAATGAATGAAATTGTAGCATTTTATTGACAATGAGATGGTTCTATTAGTAGGAATCTATTCTGCATAATTCCATTTTGTGTTTACCTTCTGGAAAAATGAAAGGATTCTGTATGGTTAACTTAAATACTTAGAGAAATTAATATGAATAATGTTAGCAAGAATAACCCTTGTTATAAGTATTATGCTGGCAACAATTGTCGAGTCCTCCTCCTCACTCTTCTGGGCTAATTTGTTCTTTTCTCCCCATTTAATAGTCCTTTTCCCCATCTTTCCCCAGGTCCGGTGTTTTCTTACCCACCTCCTTCCCTCCTTTTTATAATACCAGTGAAACTTGGTTTGGAGCATTTCTTTCACATAAAGGTACAAATCATACTGCTAGAGTTGTGAGGATTTTTACAGCTTTTGAAAGAATAAACTCATTTTAAAAACAGGAAAGCTAAGGCCCAGAGATTTTTAAATGATATTCCCATGATCACACTGTGAATTTGTGCCAGAACCCAAATGCCTACTCCCATCTCACTGAGACTTACTATAAGGACATAAGGCATTTATATATATATATATTATATATACTATATATTTATATATATTACATATTATATATATAATATATATTATATAATATATATTATATTATATAATATATAATATAAATATAATATAAATTATATTATATAATATATAATATAAATATAATATAAATTATATAAATATAATATATATTTTATTATATAATATAATATATATTATATAAATATAATATATAAATTATATAATATAATATATATTATATAATATAATATATTTTATTATATAAATATATATTATATTATATAATATATATTTTATTATATAATATATATTATATATTTATAGAATATAATATATATTTTATTATATAATATATATTATATAATATATATTATATTTATATATAACATATATTATTATATAAAATATGTATAATATATATTATATAAATATATTTATATATTATATAAATATATATATTATATATAATTCTAATGGTTGAATTCCAAGAATAATCTATGGCATGAAAGATTTTACCTGTCAACAGTGGCTGGCTCTTCATGGTTGCTACAATGAGTGTGTAAGATTCTGAAGGACTCCTTTAATAAGCCTAAACTTAATGTTCAACTTAGAATAAATACAATTCTTCTAATTTTTTTTGAATAATTTTTAAAAAGTCAGAAATGAGCTTTGAAAGAATTATGGTGGTGAAGGATCCCCTCAGCAGCACAAATTCAGGAGAGAGATGTCTTAACTACGTTAGCAAGAAATTCCTTTTGCTAAAGAATAGCATTCCTGAATTCTTACTAACAGCCATGATAGAAAGTCTTTTGCTACAGATGAGAACCCTCGGGTCAACCTCATCCTTGGCATATTTCATGTGAAGATATAACTTCAAGATTGTCCTTGCCTATCAATGAAATGAATTAATTTTATGTCAATGCATATTTAAGGTCTATTCTAAATTGCACACTTTGATTCAAAAGAAACAGTCCAACCAACCAGTCAGGACAGAAATTATCTCACAATAAAAATCCTATCGTTTGTACTGTCAATGATTAGTATGATTATATTTATTACCGTGCTAAGCAGAAGAGAAATGAAGTGAATGTTCATGATTTATTCCACTATTAGACTTCTCTTTATTCTTAAAAATATTTAAGATCACTAAATTTTTATAGGACTTTAAAAACAGTAATGTGCTGCTTTGAGTGTGTAGGACTAAGAAATGGGATTCAGAGTAGTAAAGAGAAAAGTGGAATTTCCAAGCACTATGAATTACTGTTCTTTAAAAAACAGCAAAAATCAAATAACAGTATTCCTCCAAAAAAGATGGCAAGTGTAAACTCTATACCTTCATGTCTCCCGTGGAATGTTAGTGATCAATTTCCACTTCTCTCTTTTACATCTTACTTGCCCATTAACTCTTATACCTAATCCAAAGATTGTTAATATGGCTATGTCTCACTTTCAGGACACCTTTTATTTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +>3$chr1$82792$85041 +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNACTACATCCCACAGTGGGTAACAAAAATAACCTTGAAGAAGGGAAAAATTTGGTTTCCAGAATAAACACATTATAATATCCAAAATGTCCAGTTTTCAACAAAAATTAAGAAGCATGCAAATAAACACAAAACTATGGCCCATTTACAGAAGAAATAAATGAGACTCTCCCTGAGTAAGCAGATATTGAAAATATTAGACAAAAACTTTATATAACTGTCTTAAATAAACTTAAAGAGCTAAAGAAACCCAAGAGAATGACATATAAATAAATAAGAAATATGAATTTTTTTAAAGGTACAAAAAAATTCTGAGGCTGAAAAGTACAATAAGTAAAAAGTTACTTTTTACTTAGGGTTCCAATAGAAGATTTGAGCAGCTGGAAAAAAGAATCAGTGAACTTGATAGATCAAATGAAATGATTCAGTCTGAAGAGCAGGAAAATGAAAGAATGACAACAAAAAAGAATAGAGCCTAAAGACCTGTGTAACAACATCAAGAATGCCTACATACAGAATCCTGGTGGGGAGTGAGGGGCAGGAAGACTATTTGAAGAAATGTGTTTGAAAGCTTCCCAAATTTCACTAAAAACAAATATATACATTCAAAAAGCTCAGTGAACTTCATCAAGGAAATATACAAAGATATTCACACCAAGACACACTATGTTTCAAATTGTCAAAAGGCAAAGCGAATGTTTGAAAGCAGCAAGAGAAAGGCAACGCGTCATTTACAAAGGATCCTCAATAAGTTTGACAGCAGATAGTGCATTATAAGCCATGGATGCCAGAAGAGCTTAGGAAAAAGGCAACGCGTCATTTACAAAGGATCCTCAGTAAGTTTGACAGCAGAGAGCTCATTATAAACCATGGGTGCCAGAAGAGCTTAGGATGACATTTTAAAGTTCTGAAAGAAAAAAACACTGTCAACCAAAAATTCTATAACTTGGAAGATGCCCCTTCAAGTATTAAGGATAAATTACACATTCCCAGATTAAAAAAAAGAAAGAGAGAGAGAGAGAAAGAGAAAGAAAGAAAGAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAGAGAAAGAAAGAAAGAAGAAAGAGAAAGAAAGAAAGAAAGAGAGAGAGAAAGAGAGAGAAAGAAAAAGAAGGAAAGAAAGAAAGAAAGAAAAAAGAAAGAAAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAGAAAAGCAAGCAAGCTTTAAAAGTTCATGTTTGGTAGGCTGTACTTCAAGATACACTTTTAAAAAAAAGACTCCTTCAGATACAAACTAAAAAACACTAGAAAGTAACTCAAAACCACATAAAGAAATAACTCCAGTAAAGATAACTACATAGGTAAATATAAAAGCAATTATCACATTTTTTGTAAGTCTTTTTTAATATTCTATATGTTTTAAAACAAATGTGTAAAATAATGACTATAAATCTATGTTAATGAAGCATGATGTATACAGATGTGGTTTGTGAAATTACCAACATAAAGAAATTCATAGGAAACTAAATAATAATAGAGATTTTGTATACTATTGAAGTTGTTTCAATTTACTCTAAATTGTTCCAAATTAAGAATGTTAATTGTAAATCCCCATGGTAACCACTAAGTTAATATCTTTTGAAAATACAGAAAAGGAAAGCACAGGGTAAACACAGTGATATGCTACAAAATAGCAACTAAACACAAAAGAAGGCGATAATTGAGGAAATTAGGAACAAAGGAGGTATAAGACATACAGAAAACAAAAGCAAAATGGTAGGAGTAAGCCCCTCTTTATCAGTAATTACATTAAATACAAATGAATTAAACTCTCCAATCCAAAGAAAGAGATTAACAGAATGGATTTTTTAAAAATGATCCAACTATATTGTCCACAAGATACTCACTTTAGATCAAAATACACAATGAGTTGAAATGAAAGGATGGGAGAAAATATTCCATGTAAGTAATAACCAAAGGAGATCTGAGGCAAATATACTTATATCAGACAAAATAGACTTTAAGTCAAAAACTGTTACAAAATACAAAGAACAGTATATATTGATTTCAAAATTAATTAAGAAGATATAACAATTATAAATATATGTACACCAACTAACAGGGCTCCAAAATATATAATGTAACCATTGAGAGAATTAAAGGGAGAGACAGACAATTCCACGAAAATTGTTGGGCATTTGAAAACCCAACTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +>4$chr1$98000$100116 +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCCATGACAGGCAGAGCTCCCTGTTGAGCCACAGAGATTTAGAGAATGGCTGTTAACACAGCATAATCCAGCCCATCCTGACTAATCTGATATTAACATGTATAATAAAGAATTCTATCAATGCTGAGGGAAGATGACTAGTTAAGGTCCTAGGTTGCAAGTCTCAAAACCTCTTCTAAGGATTGTAGACAGGAAATTAAATGACTTCTAGTCCCTAGAGTTCCCAATCTCCTACCATCCCATCCTAATATGACAGAAGTAATTCCTGAGTTGCTTCTGAAACCAGAGCTTCCCTCAGAACCCTTAGCCTGCCAGATGGCTTCTTGGAGAGCCCTCACTCACTTTTCTCCTTCTGCTATTGCTGCTCATTCATTCCAGTTTTTAAAAATTCATCTTTATCCAGGAACCTCGCTTCTAGAAAAGTCATACAGGTGCTTCCAGGAGGCTACATGGGCACCCATATTTTTCTAGCCACTTTCATTAGACCAATGCAGCAGAGAAGAAAAGCCTCAATAATTATTATGACATGGCATGTTAGGATACCAAGTAAATTGCATTTGTAAAATGTGATTTTCTGTTGGTGTTCACTTCAGCTCTACTGACATTTGGTAAGTATTATTGACTGACTGACTAACTAATGTGGTCATTAGTCTTCATAAAGAAAGGCTCTCTACAAAAACGGAGGGATGCCCTTTTTCTGGCATTTAATACGTAAGAAATTGCCTCCAATAGAAACCAGAGTTGCCTGATTACTATCAGCACAGGAGAAATGTATTAATGTGCCTTTCTAGTAACAGGTTTTTAGAAAGTCAAATATAAACAAATCTGTCTATTTGTGTGTGTGCATGTGGTAGTGGGGAGGGAAGAAAAAAGGAGGGGGAGAGAAAGAGAAATAAGAACCAAGTTTATTATACTGTATTCAGGGGGAAAAAATTTTCCCAAGGTCCTAACAGAAGAGCAAAGTGCCACTGTCAATAGCCTCAGTAGTGTTAGGGTTGCTTTTATTTATTTATTTATTTATTTATTTATTTATTTATTTATTTTTCCTTTTTTTTCTTTCTCTTTTTTTCTTCTTTTTTTTTTCTTTTCTTTCTTTTTTTTTTTTTTTTTTTTTTTTGGACAGAGTCTCACACTGTCACCTGGGCTGGAGTGCATTGGTGCAATCTCGACTCACTGCAACTTCTGCCTCCCAGGTTCAAGTGATTCTCCTGCCTCAGCCGCCCAAGTAGCTGGGATTACAGGTGTCTGCCACCGTGCCTAGCTAATTTTTTTGTATTTTTAGTAGAGATGAGGTTTCACTATGTTGGCCAGGCTGGTCTCAAACTCCTGACCTCATGATCCACCCACGTTGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCGCCCCTGGCCAGGATTGCTTTTACAGCCAGTCTTCAGGTGCCCACTGTAGGAACAATGTCATTTAACCCTCGGGATTATTCTGTGCCAAATATGGATAATGACTAATATCCAACACAGATATTCTCAGCTCAGAAGAGCAATTAGCAAATTCATAAATTAAGTGCTTGCTTCCTCTTTAGTCAAATACAAACGTTTGTTAAAAGATATTATTTTGCTTTACACTTTTTCTCTCAGAAATAAGCAGATGCTTGAATTCCCACAGTGCTGCTTGAGCCTCACACCATGTCATCCTGCCAGGCACCCAGATCCAGTTCTAGAGTTTCACATGATCGTGAGTGTTGGTTAATAAGTCAATGTGAACTGGGAGGGGAGATTTTTCAGGAGTGCCACAGGGCTCTCCCTTTAATCACATACACTCCCTGCTTTCATTGGAAAGTGTATAATGATGTCAGAGTGCCCCAGAATGGAGCTAGTTGGAAGACTGCCGTCATAGGGATGCCTTAGTGAATTAATAAGGTTTTAATTTCTGGCTCTCAACTTTGTAGATGTAAAAGTTGATTTATCAATATGTGAGAAAGGATGAATCTTTCTGAAGGTTATGTCATCACACTCACTAAGCACACAGAGAATAATGTCTAGAATCTGAGTGCCATGTTATCAAATTGTACTGAGACTCTTGCAGTCACACAGGCTGACATGTAAGCATCGCCATGCCTAGTACAGACTCTNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN diff --git a/v1.0/v1.0/ref2.fasta.fai b/v1.0/v1.0/ref2.fasta.fai new file mode 100644 index 000000000..e5d66331d --- /dev/null +++ b/v1.0/v1.0/ref2.fasta.fai @@ -0,0 +1,5 @@ +0$chr1$9001$11468 2567 19 2567 2568 +1$chr1$53713$55817 2204 2607 2204 2205 +2$chr1$65161$67630 2569 4832 2569 2570 +3$chr1$82792$85041 2349 7422 2349 2350 +4$chr1$98000$100116 2216 9793 2216 2217 diff --git a/v1.0/v1.0/test-cwl-out2.cwl b/v1.0/v1.0/test-cwl-out2.cwl new file mode 100644 index 000000000..049fee029 --- /dev/null +++ b/v1.0/v1.0/test-cwl-out2.cwl @@ -0,0 +1,18 @@ +class: CommandLineTool +cwlVersion: v1.0 +requirements: + - class: ShellCommandRequirement +hints: + DockerRequirement: + dockerPull: "debian:wheezy" + +inputs: [] + +outputs: + - id: foo + type: File + +arguments: + - valueFrom: > + echo foo > foo && echo '{"foo": {"location": "file://$(runtime.outdir)/foo", "class": "File"} }' > cwl.output.json + shellQuote: false diff --git a/v1.0/v1.0/tmap-tool.cwl b/v1.0/v1.0/tmap-tool.cwl index 1cb08428b..505d60036 100755 --- a/v1.0/v1.0/tmap-tool.cwl +++ b/v1.0/v1.0/tmap-tool.cwl @@ -38,7 +38,8 @@ "glob": "output.sam" }, "type": ["null", "File"] - } + }, + {"id": "args", "type": "string[]"} ], "requirements": [ {"class": "SchemaDefRequirement", diff --git a/v1.1.0-dev1/CommandLineTool.yml b/v1.1.0-dev1/CommandLineTool.yml index 9faf0ec2f..d98f85a1d 100644 --- a/v1.1.0-dev1/CommandLineTool.yml +++ b/v1.1.0-dev1/CommandLineTool.yml @@ -367,14 +367,32 @@ $graph: extends: InputParameter doc: An input parameter for a CommandLineTool. specialize: - - specializeFrom: InputRecordSchema - specializeTo: CommandInputRecordSchema - - specializeFrom: InputEnumSchema - specializeTo: CommandInputEnumSchema - - specializeFrom: InputArraySchema - specializeTo: CommandInputArraySchema - specializeFrom: InputBinding specializeTo: CommandLineBinding + fields: + - name: type + type: + - "null" + - CWLType + - stdin + - CommandInputRecordSchema + - CommandInputEnumSchema + - CommandInputArraySchema + - string + - type: array + items: + - CWLType + - CommandInputRecordSchema + - CommandInputEnumSchema + - CommandInputArraySchema + - string + jsonldPredicate: + "_id": "sld:type" + "_type": "@vocab" + refScope: 2 + typeDSL: True + doc: | + Specify valid types of data that may be assigned to this parameter. - type: record name: CommandOutputParameter diff --git a/v1.1.0-dev1/Process.yml b/v1.1.0-dev1/Process.yml index 821ef4fca..cf8e03aed 100644 --- a/v1.1.0-dev1/Process.yml +++ b/v1.1.0-dev1/Process.yml @@ -568,6 +568,10 @@ $graph: The default value for this parameter if not provided in the input object. +- name: RegularInputParameter + type: record + extends: InputParameter + fields: - name: type type: - "null" @@ -591,6 +595,7 @@ $graph: doc: | Specify valid types of data that may be assigned to this parameter. + - name: OutputParameter type: record extends: Parameter diff --git a/v1.1.0-dev1/Workflow.yml b/v1.1.0-dev1/Workflow.yml index 898be00ff..3f2f9c150 100644 --- a/v1.1.0-dev1/Workflow.yml +++ b/v1.1.0-dev1/Workflow.yml @@ -87,17 +87,17 @@ $graph: - name: type type: - "null" - - "#CWLType" - - "#OutputRecordSchema" - - "#OutputEnumSchema" - - "#OutputArraySchema" + - CWLType + - OutputRecordSchema + - OutputEnumSchema + - OutputArraySchema - string - type: array items: - - "#CWLType" - - "#OutputRecordSchema" - - "#OutputEnumSchema" - - "#OutputArraySchema" + - CWLType + - OutputRecordSchema + - OutputEnumSchema + - OutputArraySchema - string jsonldPredicate: "_id": "sld:type" @@ -111,13 +111,15 @@ $graph: name: ExpressionTool extends: Process specialize: - - specializeFrom: "#OutputParameter" - specializeTo: "#ExpressionToolOutputParameter" + - specializeFrom: InputParameter + specializeTo: RegularInputParameter + - specializeFrom: OutputParameter + specializeTo: ExpressionToolOutputParameter documentRoot: true doc: | Execute an expression as a Workflow step. fields: - - name: "class" + - name: class jsonldPredicate: "_id": "@type" "_type": "@vocab" @@ -158,7 +160,7 @@ $graph: - string? - string[]? - name: linkMerge - type: ["null", "#LinkMergeMethod"] + type: ["null", LinkMergeMethod] jsonldPredicate: "cwl:linkMerge" doc: | The method to use to merge multiple sources into a single array. @@ -166,17 +168,17 @@ $graph: - name: type type: - "null" - - "#CWLType" - - "#OutputRecordSchema" - - "#OutputEnumSchema" - - "#OutputArraySchema" + - CWLType + - OutputRecordSchema + - OutputEnumSchema + - OutputArraySchema - string - type: array items: - - "#CWLType" - - "#OutputRecordSchema" - - "#OutputEnumSchema" - - "#OutputArraySchema" + - CWLType + - OutputRecordSchema + - OutputEnumSchema + - OutputArraySchema - string jsonldPredicate: "_id": "sld:type" @@ -268,8 +270,8 @@ $graph: - name: valueFrom type: - "null" - - "string" - - "#Expression" + - string + - Expression jsonldPredicate: "cwl:valueFrom" doc: | To use valueFrom, [StepInputExpressionRequirement](#StepInputExpressionRequirement) must @@ -462,8 +464,10 @@ $graph: extends: "#Process" documentRoot: true specialize: - - specializeFrom: "#OutputParameter" - specializeTo: "#WorkflowOutputParameter" + - specializeFrom: InputParameter + specializeTo: RegularInputParameter + - specializeFrom: OutputParameter + specializeTo: WorkflowOutputParameter doc: | A workflow describes a set of **steps** and the **dependencies** between those steps. When a step produces output that will be consumed by a diff --git a/v1.1.0-dev1/conformance_test_v1.1.0-dev1.yaml b/v1.1.0-dev1/conformance_test_v1.1.0-dev1.yaml index 998f1d62a..640c062d9 100644 --- a/v1.1.0-dev1/conformance_test_v1.1.0-dev1.yaml +++ b/v1.1.0-dev1/conformance_test_v1.1.0-dev1.yaml @@ -63,7 +63,7 @@ output_file: class: File checksum: sha1$47a013e660d408619d894b20806b1d5086aab03b - location: + location: Any size: 13 doc: Test command execution in Docker with simplified syntax stdout redirection