Metadata-Version: 2.1
Name: wes-service
Version: 2.8
Summary: GA4GH Workflow Execution Service reference implementation
Home-page: https://github.com/common-workflow-language/cwltool-service
Author: GA4GH Containers and Workflows task team
Author-email: common-workflow-language@googlegroups.com
License: Apache 2.0
Download-URL: https://github.com/common-workflow-language/cwltool-service
Platform: UNKNOWN
Provides-Extra: toil
Provides-Extra: arvados
Requires-Dist: future
Requires-Dist: connexion (==1.4.2)
Requires-Dist: ruamel.yaml (<0.15,>=0.12.4)
Requires-Dist: cwlref-runner (==1.0)
Requires-Dist: schema-salad (<3,>=2.6)
Requires-Dist: subprocess32 (==3.5.2)
Provides-Extra: arvados
Requires-Dist: arvados-cwl-runner; extra == 'arvados'
Provides-Extra: toil
Requires-Dist: toil[all] (==3.16.0); extra == 'toil'

Workflow as a Service
=====================

This provides client and server implementations of the `GA4GH Workflow
Execution
Service <https://github.com/ga4gh/workflow-execution-schemas>`__ API for
the Common Workflow Language.

It provides an `Arvados <https://github.com/curoverse/arvados>`__
backend. It also works with any ``cwl-runner`` that supports the CWL
standard command line interface:
http://www.commonwl.org/v1.0/CommandLineTool.html#Executing\_CWL\_documents\_as\_scripts

Installation:

::

    pip install wes-service

Run a standalone server with default ``cwl-runner`` backend:

::

    $ wes-server

Submit a workflow to run:

::

    $ wes-client --host=localhost:8080 myworkflow.cwl myjob.json

List workflows:

::

    $ wes-client --list

Get workflow status:

::

    $ wes-client --get <workflow-id>

Get stderr log from workflow:

::

    $ wes-client --log <workflow-id>

Server Options
==============

Run a standalone server with Arvados backend:
---------------------------------------------

::

    $ wes-server --backend=wes_service.arvados_wes

Use a different executable with cwl\_runner backend
---------------------------------------------------

::

    $ wes-server --backend=wes_service.cwl_runner --opt runner=cwltoil

Pass parameters to cwl-runner
-----------------------------

::

    $ wes-server --backend=wes_service.cwl_runner --opt extra=--workDir=/

Client environment options
==========================

Set service endpoint:

::

    $ export WES_API_HOST=localhost:8080

Set the value to pass in the ``Authorization`` header:

::

    $ export WES_API_AUTH=my_api_token

Set the protocol (one of http, https)

::

    $ export WES_API_PROTO=http


