Skip to main content

Light python framework for AWS SWF

Project description

Light python framework for AWS SWF

Project

Focus of this project

Similar projects exists (like Simpleflow which seems mature). Here is where Caravan differs from existing projects:

  • Support of AWS Lambda tasks

  • Boto3

  • KISS

  • Bring your own workflow framework (standard implementations as contribs)

  • No coupling between Decider code and Activity code

  • Paster compatible config file

Features

  • Decider worker

  • Activity task worker

  • Commands to start/signal/terminate an arbitrary workflow execution

  • Command to list open workflow execution

  • Command to register a domain

Usage

Setup a SWF for the example:

$ caravan-domain-register -n CaravanExample --retention-days 1

List open execution for last 24h:

$ caravan-list -d CaravanExample

List open execution for year 2015:

$ caravan-list -d CaravanExample --oldest 2015-01-01

Run the decider:

$ caravan-decider -d CaravanExample -m caravan.examples.demo -t default

Start an execution:

$ caravan-start -d CaravanExample -n Demo -v 0.1 -i 1

Send a signal to an execution:

$ caravan-signal -d CaravanExample -i 1 -s PAYMENT_CONFIRMED

Terminate an execution:

$ caravan-terminate -d CaravanExample -i 1

Similar projects

Python:

Ruby:

Development

Clone and install development dependencies:

$ git clone git@github.com:pior/caravan.git
$ cd caravan
$ pip install -e .[dev]

Run tests:

$ py.test

Release

The release process use zest.releaser:

$ fullrelease

License

MIT licensed. See the bundled LICENSE file for more details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

caravan-0.1.2-py2-none-any.whl (18.0 kB view details)

Uploaded Python 2

File details

Details for the file caravan-0.1.2-py2-none-any.whl.

File metadata

File hashes

Hashes for caravan-0.1.2-py2-none-any.whl
Algorithm Hash digest
SHA256 cf26b253a5185f8440a9451ca3979e124bca88e0dc3c15ab4f1882fabcc48bf9
MD5 08824f33f4657b624c3ea7275ba46902
BLAKE2b-256 eae7f4e614f83cc630a3f85854848774ada0bce7e49607e6ac7635fbeee57e81

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page