The CommonWorkflowLanguage is an effort to establish a formal specification of workflows that is accepted by a range of workflow editing tools, fostering the exchange of expertise between otherwise divided communities. The effort, now at its (https://github.com/common-workflow-language/common-workflow-language/tree/master/draft-3) third draft, is slightly dominated by bioinformaticians and their wealth of smallish tools, services and data interacting in everyone's daily routine. Debian is pretty good as a collection of those tools, with DebianMed granting an easy access to a bunch of constructive individuals, which somewhat co-anchors the workflow community with it.

This page is meant as an open invitation to describe your personal approach towards the CWL. Let this be a collection of smallish tutorials and issues you ran into, so this can be discussed and addressed. If we do this right, then this community science at its best.

Installation

Prerequisites

sudo apt-get install git git-buildpackage debhelper dh-python python python-all python-setuptools python-rdflib-jsonld python-schema-salad python-shellescape

and as runtime requirements for the cwltool, also install

sudo apt-get install python-rdflib python-rdflib-jsonld python-requests python-schema-salad python-yaml

A Debian package of the cwltool reference implementation of CWL-compatible workflow engines is about to be uploaded to the Debian repository. In the meantime, to build and install it perform

gbp clone https://anonscm.debian.org/git/debian-med/cwltool.git
cd cwltool
gbp buildpackage -rfakeroot
cd ..
sudo dpkg -i cwltool_*deb

For a range of example workflows and tool descriptions, look at https://github.com/common-workflow-language/workflows and get that whole repository to your local drive via

cd # no arguments, will change to home directory
git clone https://github.com/common-workflow-language/workflows.git

The tutorial will refer to this directory as ~/workflow .

Hello World

coming.

Questions

Q: When looking at a workflow, how do I know what binaries to install?

A: This is missing/work in progress. The ELIXIR database, i.e. a catalog of bioinformatics tools and services, knows about Debian packages. And the CWL is mean to refer to that database. Any information thus automated retrieval is a bit of a workflow of its own, yet, such that it may be preferable to, for now, just use "apt-cache search" or "apt-file" on the names of the binaries stated in the workflow.

Q: Where are other workflow engines than cwltool to experiment with?

A: The cwltool lists all alternatives on its home page (http://commonwl.org). None of these is packaged up to Debian standards, Java is tricky at times, but Bio-Linux has directly installable .debs or Taverna and Galaxy.