Skip to content
cwl-tes submits your tasks to a TES server. Task submission is parallelized when possible.
Branch: master
Clone or download
mr-c Merge pull request #25 from common-workflow-language/ftp
Initial support for ftp locations
Latest commit 4d7e2e5 Oct 26, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
tests typo Sep 25, 2018
.gitignore code migration from… Jun 1, 2017
.gitmodules added travis config Jun 6, 2017
.travis.yml Don't test PRs twice.w Aug 24, 2018
LICENSE code migration from… Jun 1, 2017
cwl-tes signal handling, log formatting Aug 3, 2017
requirements.txt grab complimentary cwltool fixes Sep 21, 2018
tox.ini bump funnel version to 0.7.0 for testing Jul 12, 2018

Build Status License

GA4GH CWL Task Execution

cwl-tes submits your tasks to a TES server. Task submission is parallelized when possible.

Funnel is an implementation of the GA4GH task execution API. It runs your dockerized tasks on slurm, htcondor, google compute engine, aws batch, etc.



  • Start the task server
funnel server run
  • Run your CWL tool/workflow
cwl-tes --tes http://localhost:8000 tests/hashsplitter-workflow.cwl.yml --input tests/resources/test.txt


I strongly recommend using a virtualenv for installation since cwl-tes depends on a specific version of cwltool.

Install from pip:

pip install cwl-tes

Install from source:

python install

Run the v1.0 conformance tests

To start a funnel server instance automatically and run all of the tests, install tox and run it

$ pip install tox
$ tox

For running only the conformance tests in python 2.7:

$ tox -e py27-unit

In a similar way they can be run on any supported python interpreter.

A more manual approach:

Download the conformance tests:

git submodule update --init --recursive

Start the funnel server.

funnel server --config /path/to/config.yaml

Make sure that TMPDIR is specified in the AllowedDirs of your Local storage configuration.

To run all the tests:


To run a specifc test:

./tests/ 10
You can’t perform that action at this time.