Skip to content

EpicWink/python-swf-typed

Repository files navigation

Python interface to SWF

Typed Python interface to AWS Simple Workflow Service.

  • Type annotations
  • Explicit exceptions
  • Execution state construction
  • Consistent method/attribute/parameter names (see below)
  • Consistent model struture
  • Automatic flattening of paged-list responses
    • next-page calls are run concurrently and on-demand
  • Better execution filtering

The most interesting part is state construction: given an execution history, this library can build a full state of the execution and all of its tasks with all details; see swf_typed.build_state. The rest of the API simply wraps and closely matches AWS's SWF API.

See also

Installation

pip install swf-typed

Usage

See the full documentation.

Example

import swf_typed

execution = swf_typed.ExecutionId(id="spam", run_id="abcd1234")
execution_details = swf_typed.describe_execution(execution, domain="eggs")
print(execution_details.configuration)

events = swf_typed.get_execution_history(execution, domain="eggs")
state = swf_typed.build_state(events)
for task in state.tasks:
    print(task.status)

Terminology

This library has a slight change in terminology from AWS SDKs/APIs/docs:

  • Workflow type -> workflow
  • Workflow execution -> execution
  • Workflow execution workflowId -> execution ID
  • Activity type -> activity
  • Activity task -> task
  • Activity worker -> worker
  • Activity task activityId -> task ID

This is to simplify symbol names.

About

Typed Python interface to AWS Simple Workflow service

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy