# seddy
[](
https://github.com/EpicWink/seddy/actions?query=branch%3Amaster+workflow%3Atest)
[](
https://codecov.io/gh/EpicWink/seddy)
[](
https://seddy.readthedocs.io/en/latest/?badge=latest)
[](
https://pypi.org/project/seddy/)
Multi-workflow SWF decider and workflow management service.
Features:
* Start a decider on many workflows
* Specify a directed graph (aka DAG) of activity (via dependencies) tasks in the
workflow
* Supports coloured logging
* Extensible decision-building: just subclass `seddy.DecisionsBuilder`
* Register workflows
* Customise task input
What `seddy` doesn't do:
* Activity workers
* Anything [AWS CLI](https://aws.amazon.com/cli/) can
* Workflows listing and detailing
* Workflow execution management and history detailing
* Tag management
* Domain management
* Activities management
* Validate workflow execution input
* Manage workflows definition file (`seddy` just uses it)
## Installation
```bash
pip3 install seddy
```
Install extra packages for further functionality
* Coloured logging: [`coloredlogs`](https://pypi.org/project/coloredlogs/)
* YAML workflows specs file: [`pyyaml`](https://pypi.org/project/PyYAML/) or
[`ruamel.yaml`](https://pypi.org/project/ruamel.yaml/)
* JSON-format logging:
[`python-json-logger`](https://pypi.org/project/python-json-logger/)
## Usage
Get the CLI usage
```bash
seddy -h
```
API documentation
```bash
pydoc3 seddy
```
## Docker
Instead of installing `seddy` locally, you can use our pre-built Docker image
```bash
docker run -v /path/to/workflow/file/parent:/seddy-data epicwink/seddy -h
```
Raw data
{
"_id": null,
"home_page": "https://github.com/EpicWink/seddy",
"name": "seddy",
"maintainer": null,
"docs_url": null,
"requires_python": "~=3.6",
"maintainer_email": null,
"keywords": "swf, decider",
"author": "Laurie O",
"author_email": "laurie_opperman@hotmail.com",
"download_url": "https://files.pythonhosted.org/packages/89/78/8e40db1e133011ec70ac3facc3c2d4365e2b7c0180d02cf24174674bd733/seddy-0.3.0a1.tar.gz",
"platform": null,
"description": "# seddy\n[](\nhttps://github.com/EpicWink/seddy/actions?query=branch%3Amaster+workflow%3Atest)\n[](\nhttps://codecov.io/gh/EpicWink/seddy)\n[](\nhttps://seddy.readthedocs.io/en/latest/?badge=latest)\n[](\nhttps://pypi.org/project/seddy/)\n\nMulti-workflow SWF decider and workflow management service.\n\nFeatures:\n* Start a decider on many workflows\n* Specify a directed graph (aka DAG) of activity (via dependencies) tasks in the\n workflow\n* Supports coloured logging\n* Extensible decision-building: just subclass `seddy.DecisionsBuilder`\n* Register workflows\n* Customise task input\n\nWhat `seddy` doesn't do:\n* Activity workers\n* Anything [AWS CLI](https://aws.amazon.com/cli/) can\n * Workflows listing and detailing\n * Workflow execution management and history detailing\n * Tag management\n * Domain management\n * Activities management\n* Validate workflow execution input\n* Manage workflows definition file (`seddy` just uses it)\n\n## Installation\n```bash\npip3 install seddy\n```\n\nInstall extra packages for further functionality\n* Coloured logging: [`coloredlogs`](https://pypi.org/project/coloredlogs/)\n* YAML workflows specs file: [`pyyaml`](https://pypi.org/project/PyYAML/) or\n [`ruamel.yaml`](https://pypi.org/project/ruamel.yaml/)\n* JSON-format logging:\n [`python-json-logger`](https://pypi.org/project/python-json-logger/)\n\n## Usage\nGet the CLI usage\n```bash\nseddy -h\n```\n\nAPI documentation\n```bash\npydoc3 seddy\n```\n\n## Docker\nInstead of installing `seddy` locally, you can use our pre-built Docker image\n```bash\ndocker run -v /path/to/workflow/file/parent:/seddy-data epicwink/seddy -h\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Multi-workflow SWF Decider and Workflow Management Service",
"version": "0.3.0a1",
"project_urls": {
"Documentation": "https://seddy.readthedocs.io/en/latest/",
"Homepage": "https://github.com/EpicWink/seddy",
"Source": "https://github.com/EpicWink/seddy",
"Tracker": "https://github.com/EpicWink/seddy/issues"
},
"split_keywords": [
"swf",
" decider"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f9583f5748c00e10b1ea1fba7048553e2891224aac90c2da36210fa176ab7989",
"md5": "10d75e5fa27ebacac408766c741a57bd",
"sha256": "eb0fd163a5ccf61fc1c77f05cea220129c2e146ca190912394c42f8ffe6a0102"
},
"downloads": -1,
"filename": "seddy-0.3.0a1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "10d75e5fa27ebacac408766c741a57bd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "~=3.6",
"size": 17993,
"upload_time": "2025-07-11T03:08:50",
"upload_time_iso_8601": "2025-07-11T03:08:50.317028Z",
"url": "https://files.pythonhosted.org/packages/f9/58/3f5748c00e10b1ea1fba7048553e2891224aac90c2da36210fa176ab7989/seddy-0.3.0a1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "89788e40db1e133011ec70ac3facc3c2d4365e2b7c0180d02cf24174674bd733",
"md5": "d07b2834342634b2e77e934b5c24d87e",
"sha256": "8cf02d1ed7333860472ee815fcc3ce8060ff84d48a9ca47d91870a98e8bd4df7"
},
"downloads": -1,
"filename": "seddy-0.3.0a1.tar.gz",
"has_sig": false,
"md5_digest": "d07b2834342634b2e77e934b5c24d87e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "~=3.6",
"size": 38148,
"upload_time": "2025-07-11T03:08:51",
"upload_time_iso_8601": "2025-07-11T03:08:51.799198Z",
"url": "https://files.pythonhosted.org/packages/89/78/8e40db1e133011ec70ac3facc3c2d4365e2b7c0180d02cf24174674bd733/seddy-0.3.0a1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-11 03:08:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "EpicWink",
"github_project": "seddy",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "seddy"
}