/common-workflow-language

Repository for CWL Specfications

Primary LanguagePythonApache License 2.0Apache-2.0

Common Workflow Language

The Common Workflow Language (CWL) is an informal, multi-vendor working group consisting of various organizations and individuals that have an interest in portability of data analysis workflows. Our goal is to create specifications that enable data scientists to describe analysis tools and workflows that are powerful, easy to use, portable, and support reproducibility.

CWL builds on technologies such as JSON-LD and Avro for data modeling and Docker for portable runtime environments.

CWL is designed to express workflows for data-intensive science, such as Bioinformatics, Chemistry, Physics, and Astronomy.

CWL Specification

The current stable specification is draft 2:

http://common-workflow-language.github.io/draft-2/

The current work in progress specification is draft 3:

http://common-workflow-language.github.io/draft-3/

Implementations

Implementations working on or currently capable of running the Common Workflow Language:

Examples

Github repository of example tools and workflows.

Development and testing

The CWL effort is on Github:

https://github.com/common-workflow-language/common-workflow-language

There is a Jenkins server maintained by Curoverse that runs tests for the reference implementation, builds and uploads packages, and builds and uploads Docker images:

https://ci.curoverse.com/job/common-workflow-language/

Current build status: Build Status

Community and Contributing

If you are interested in learning more or contributing ideas or code, come chat with us on Gitter, check out #CommonWL on Twitter, join the mailing list common-workflow-language on Google Groups or fork the repository and send a pull request!

Gitter

Participating Organizations

Individual Contributors