ShuETL
ShuETL (pronounced “shuttle”) is the opinionated FastAPI integration and deployment package for ETLantic.
ShuETL composes ETLantic into a durable, schedulable FastAPI service.
ShuETL does not reimplement ETLantic's pipeline or control-plane semantics. Instead, it assembles ETLantic's public packages, contracts, stores, and runtime roles into a coherent application-facing experience.
- ETLantic owns canonical pipeline definitions and revisions, planning, execution semantics, durable submission, run and attempt state, scheduling, reports, events, artifacts, idempotency, recovery, and provider protocols.
etlantic-fastapiis ETLantic's low-level HTTP adapter and authoritative source of ETLantic request, response, route, SSE, and error semantics.- ShuETL owns opinionated composition: configuration, provider wiring, FastAPI mounting, lifecycle integration, deployment profiles, compatibility pins, optional ecosystem adapters, and operator-focused documentation.
If a required semantic capability is absent from ETLantic, the default response
is to add it to ETLantic or one of its provider packages. ShuETL must not create
a competing Pipeline, Run, Schedule, Artifact, or executor model.
Architecture principles
- Integrate; do not reinterpret.
- One ETLantic contract at every boundary.
- Useful defaults, replaceable providers.
- FastAPI-native composition and lifecycle.
- Development convenience must not become a false production guarantee.
- SQL-only infrastructure baseline where the selected ETLantic providers support it.
The reference ecosystem can compose in one FastAPI application:
FastAPI host
├── Hedron presentation (optional)
├── AuthMate identity adapter (optional)
└── ShuETL
├── etlantic-fastapi
├── ETLantic control-plane/runtime contracts
└── ETLantic persistence and execution providers
Hedron and AuthMate remain optional peer packages. ShuETL integrates with them through public contracts and FastAPI dependencies.
Status
ShuETL is in the 0.1 boundary-proof implementation phase. The package is
intentionally inert while the published ETLantic 0.51.0 composition seam is
verified; the usable ShuETL facade begins in 0.2.
The complete design pack is in docs/plans/.
The implementation contract and release gate are in
docs/plans/PHASE_0_1_EXECUTION.md.
To run the local evidence gate:
uv sync --locked --all-groups --extra test
uv run python scripts/capture_openapi.py
uv run python scripts/check_release.py
Planned ShuETL capabilities
- mount a curated ETLantic API into an existing FastAPI application;
- create a complete FastAPI application from explicit ETLantic providers;
- validate provider compatibility and production readiness at startup;
- configure ETLantic definition, submission, event, schedule, and persistence providers without exposing their implementation details to application code;
- offer safe local-development defaults;
- document and test separate gateway, scheduler, and worker roles for production;
- integrate host authentication/authorization with ETLantic's control-plane context and authorizer contracts;
- publish a tested compatibility matrix across FastAPI and ETLantic packages;
- provide optional Hedron and AuthMate composition adapters when those packages are available.
Deployment goal
Local development may use one process and SQLite or in-memory providers.
The production reference uses one installable application/image with separate supervised roles:
FastAPI gateway
+
ETLantic scheduler/worker process or supported external execution host
+
PostgreSQL
The baseline should not require Redis, RabbitMQ, Kafka, an object store, or an external scheduler. “No required broker” does not imply that long-running ETL work executes inside the FastAPI gateway process.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file shuetl-0.1.0.tar.gz.
File metadata
- Download URL: shuetl-0.1.0.tar.gz
- Upload date:
- Size: 110.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c8d00d91aece5d404a368e917086b9aa5064d66457a43ccc4470151d46c8b743
|
|
| MD5 |
5b6fff28914dd51e95fe9429958c4c1b
|
|
| BLAKE2b-256 |
653b3f257a5c6b4ad55228120547a35f67e33f8c008bb325eb7c6e82c0d443a3
|
Provenance
The following attestation bundles were made for shuetl-0.1.0.tar.gz:
Publisher:
release.yml on eddiethedean/shuetl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
shuetl-0.1.0.tar.gz -
Subject digest:
c8d00d91aece5d404a368e917086b9aa5064d66457a43ccc4470151d46c8b743 - Sigstore transparency entry: 2794920988
- Sigstore integration time:
-
Permalink:
eddiethedean/shuetl@1a9c06b4cfa5743bfd258386cc895219ee2dc491 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/eddiethedean
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1a9c06b4cfa5743bfd258386cc895219ee2dc491 -
Trigger Event:
push
-
Statement type:
File details
Details for the file shuetl-0.1.0-py3-none-any.whl.
File metadata
- Download URL: shuetl-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07945576ee12d978e5fc785fa3303d38d41481c07fca6dc39158dc483d2ff948
|
|
| MD5 |
c2df8d2bf334e617a3be2538104591f5
|
|
| BLAKE2b-256 |
fd3a85457914d74080ab2babd8fb9f3d1da49081f2b592304729eaa1adc7ef8b
|
Provenance
The following attestation bundles were made for shuetl-0.1.0-py3-none-any.whl:
Publisher:
release.yml on eddiethedean/shuetl
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
shuetl-0.1.0-py3-none-any.whl -
Subject digest:
07945576ee12d978e5fc785fa3303d38d41481c07fca6dc39158dc483d2ff948 - Sigstore transparency entry: 2794921078
- Sigstore integration time:
-
Permalink:
eddiethedean/shuetl@1a9c06b4cfa5743bfd258386cc895219ee2dc491 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/eddiethedean
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1a9c06b4cfa5743bfd258386cc895219ee2dc491 -
Trigger Event:
push
-
Statement type: