https://github.com/common-workflow-language/workflow-service
Implementation of the GA4GH Workflow Execution Service, a REST service for running workflows
https://github.com/common-workflow-language/workflow-service
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
2 of 15 committers (13.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.9%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Implementation of the GA4GH Workflow Execution Service, a REST service for running workflows
Basic Info
Statistics
- Stars: 36
- Watchers: 12
- Forks: 22
- Open Issues: 28
- Releases: 11
Topics
Metadata Files
README.md
Workflow as a Service
This is a client and server implementation of the GA4GH Workflow Execution Service 1.0.0 API.
It provides Arvados and Toil backends. 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
Usage
Client configuration
Command line parameter or environment variable.
--host or WES_API_HOST
The host to contact.
--proto or WES_API_PROTO
The protocol (http or https) to use.
--auth or WES_API_AUTH
Credentials. Format is 'Header: value' or just 'value'. If header name is not provided, value goes in the 'Authorization'.
Get service info
$ wes-client --info
Submit a workflow to run:
Attachments must be accessible from the filesystem. Workflow runners may also support http URLs or other storage systems.
$ wes-client --host localhost:8080 --proto http \
--attachments="testdata/dockstore-tool-md5sum.cwl,testdata/md5sum.input" \
testdata/md5sum.cwl testdata/md5sum.cwl.json
List workflows
$ wes-client --list
Get workflow status
$ wes-client --get <run-id>
Get stderr log from workflow:
$ wes-client --log <run-id>
Server Configuration
Run a standalone server with default cwl-runner backend:
$ wes-server
Run a standalone server with Arvados backend:
$ pip install arvados-cwl-runner
$ wes-server --backend=wes_service.arvados_wes
Run a standalone server with Toil backend:
$ pip install toil[all]
$ wes-server --backend=wes_service.toil_wes --opt extra=--clean=never
Use alternate executable with cwl-runner backend
$ pip install cwltool
$ wes-server --backend=wes_service.cwl_runner --opt runner=cwltool --opt extra=--debug
Pass parameters to cwl-runner
Use "--opt" following by "key=value"
$ wes-server --backend=wes_service.cwl_runner --opt extra=--workDir=/tmp/work
Development
If you would like to develop against workflow-service make sure you pass the provided test and it is flake8 compliant
Install from Source
$ virtualenv venv && source venv/bin/activate && pip install toil[all] && pip install . --process-dependency-links && pip install -r dev-requirements.txt
Running Tests
From path workflow-service run
$ pytest && flake8
Owner
- Name: Common Workflow Language
- Login: common-workflow-language
- Kind: organization
- Website: https://www.commonwl.org
- Twitter: commonwl
- Repositories: 34
- Profile: https://github.com/common-workflow-language
GitHub Events
Total
- Create event: 9
- Release event: 1
- Issues event: 3
- Delete event: 7
- Member event: 1
- Issue comment event: 15
- Push event: 23
- Pull request event: 16
- Pull request review event: 2
- Fork event: 1
Last Year
- Create event: 9
- Release event: 1
- Issues event: 3
- Delete event: 7
- Member event: 1
- Issue comment event: 15
- Push event: 23
- Pull request event: 16
- Pull request review event: 2
- Fork event: 1
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| DailyDreaming | l****l@u****u | 61 |
| Peter Amstutz | p****z@v****m | 61 |
| Michael R. Crusoe | m****e@g****m | 54 |
| Peter Amstutz | p****z@c****m | 31 |
| David Steinberg | d****d@r****m | 19 |
| Abraham Chavez | a****1@u****u | 13 |
| Ben Van de Brooke | b****3@g****m | 10 |
| James Eddy | j****y@g****m | 10 |
| Gijs Molenaar | g****s@p****l | 6 |
| dependabot[bot] | 4****] | 6 |
| dependabot-preview[bot] | 2****] | 2 |
| snyk-bot | s****t@s****o | 2 |
| Peter Amstutz | t****n@w****m | 2 |
| Peter Amstutz | t****n@i****g | 1 |
| stxue1 | 1****1 | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 22
- Total pull requests: 91
- Average time to close issues: 5 months
- Average time to close pull requests: 2 months
- Total issue authors: 10
- Total pull request authors: 14
- Average comments per issue: 1.36
- Average comments per pull request: 0.95
- Merged pull requests: 40
- Bot issues: 1
- Bot pull requests: 50
Past Year
- Issues: 3
- Pull requests: 8
- Average time to close issues: N/A
- Average time to close pull requests: 15 days
- Issue authors: 2
- Pull request authors: 2
- Average comments per issue: 1.0
- Average comments per pull request: 1.25
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 7
Top Authors
Issue Authors
- david4096 (6)
- golharam (5)
- achave11-ucsc (2)
- jaeddy (2)
- gijzelaerr (2)
- mr-c (1)
- w-gao (1)
- adamnovak (1)
- dependabot-preview[bot] (1)
- DailyDreaming (1)
Pull Request Authors
- dependabot[bot] (31)
- dependabot-preview[bot] (28)
- tetron (11)
- mr-c (8)
- DailyDreaming (7)
- thomasyu888 (3)
- snyk-bot (3)
- gijzelaerr (3)
- stxue1 (2)
- bencvdb (2)
- achave11-ucsc (2)
- jyotsnapagid (1)
- chapmanb (1)
- jaeddy (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- black * development
- build * development
- flake8 * development
- pytest * development
- actions/checkout v2 composite
- github/codeql-action/analyze v1 composite
- github/codeql-action/init v1 composite
- debian buster build
- actions/cache v4 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- codecov/codecov-action v5 composite
- black *
- codespell *
- flake8-bugbear <24.13
- isort >=5
- arvados-cwl-runner *
- mypy ==1.15
- types-PyYAML *
- types-requests *
- types-setuptools *
- connexion [swagger-ui] >= 2.0.2, < 3
- ruamel.yaml >= 0.15.78
- schema-salad *
- schema-salad *
- pytest * test
- pytest-cov * test