# Ewoks: Extensible Workflow System
Many [workflow management systems](https://s.apache.org/existing-workflow-systems) exist to deal with data processing problems that can be expressed as a graph of tasks, also referred to as a *computational graph* or *workflow*. The main purpose of a workflow management system is to provide a framework for implementing tasks, creating graphs of tasks and executing these graphs.
The purpose of *ewoks* is to provide an abstraction layer between graph representation and execution. This allows using the same tasks and graphs in different workflow management systems. *ewoks* itself is **not** a workflow management system.
## Install
```bash
pip install ewoks[orange,dask,ppf,test]
```
## Test
```bash
pytest --pyargs ewoks.tests
```
## Getting started
Workflows can be executed from the command line
```bash
ewoks execute /path/to/graph.json [--engine dask]
```
or for an installation with the system python
```bash
python3 -m ewoks execute /path/to/graph.json [--engine dask]
```
Workflows can also be executed from python
```python
from ewoks import execute_graph
result = execute_graph("/path/to/graph.json", engine="dask")
```
When no engine is specified it will use sequential execution from `ewokscore`.
## Documentation
https://ewoks.readthedocs.io/
Raw data
{
"_id": null,
"home_page": "https://gitlab.esrf.fr/workflow/ewoks/ewoks/",
"name": "ewoks",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": null,
"author": "ESRF",
"author_email": "wout.de_nolf@esrf.fr",
"download_url": "https://files.pythonhosted.org/packages/50/24/4148d07f518137b98ab0722bc3de7aba4a61e8c6bd9b964f0a63e033dfca/ewoks-0.6.0.tar.gz",
"platform": null,
"description": "# Ewoks: Extensible Workflow System\n\nMany [workflow management systems](https://s.apache.org/existing-workflow-systems) exist to deal with data processing problems that can be expressed as a graph of tasks, also referred to as a *computational graph* or *workflow*. The main purpose of a workflow management system is to provide a framework for implementing tasks, creating graphs of tasks and executing these graphs.\n\nThe purpose of *ewoks* is to provide an abstraction layer between graph representation and execution. This allows using the same tasks and graphs in different workflow management systems. *ewoks* itself is **not** a workflow management system.\n\n## Install\n\n```bash\npip install ewoks[orange,dask,ppf,test]\n```\n\n## Test\n\n```bash\npytest --pyargs ewoks.tests\n```\n\n## Getting started\n\nWorkflows can be executed from the command line\n\n```bash\newoks execute /path/to/graph.json [--engine dask]\n```\n\nor for an installation with the system python\n\n```bash\npython3 -m ewoks execute /path/to/graph.json [--engine dask]\n```\n\nWorkflows can also be executed from python\n\n```python\nfrom ewoks import execute_graph\n\nresult = execute_graph(\"/path/to/graph.json\", engine=\"dask\")\n```\n\nWhen no engine is specified it will use sequential execution from `ewokscore`.\n\n## Documentation\n\nhttps://ewoks.readthedocs.io/\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Extensible Workflow System",
"version": "0.6.0",
"project_urls": {
"Documentation": "https://ewoks.readthedocs.io/",
"Homepage": "https://gitlab.esrf.fr/workflow/ewoks/ewoks/",
"Source": "https://gitlab.esrf.fr/workflow/ewoks/ewoks/",
"Tracker": "https://gitlab.esrf.fr/workflow/ewoks/ewoks/issues/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "50244148d07f518137b98ab0722bc3de7aba4a61e8c6bd9b964f0a63e033dfca",
"md5": "3a18cb39757b7ce49563f8460ec506ff",
"sha256": "e0b774732bd0acfbd3ea9769090845a9cea98ac8232bf5dbf440793b4588c76e"
},
"downloads": -1,
"filename": "ewoks-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "3a18cb39757b7ce49563f8460ec506ff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 15885,
"upload_time": "2024-11-08T12:18:57",
"upload_time_iso_8601": "2024-11-08T12:18:57.051605Z",
"url": "https://files.pythonhosted.org/packages/50/24/4148d07f518137b98ab0722bc3de7aba4a61e8c6bd9b964f0a63e033dfca/ewoks-0.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-08 12:18:57",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "ewoks"
}