Container Unit Templates in Python — an automation framework that uses containers as deterministic execution environments
Project description
CUTIP
An automation framework that uses containers as deterministic execution environments. Define container infrastructure as structured YAML cards, wire them into units and groups, then automate tasks with plain Python workflows — from pre-build file generation through container startup to post-deployment verification.
| docker-compose | CUTIP | |
|---|---|---|
| Startup ordering | depends_on with condition polling |
Python loop -- exec into container, branch on result |
| Post-start hooks | None native | startup(ctx) per unit -- full container API |
| Pre-build file staging | None | pre_build(ctx) -- generate config, copy deps before build |
| Config variables | .env flat substitution |
paths.yaml + secrets.yaml with fail-fast validation |
| Validation | Runtime only | Static graph validation -- no backend required |
| Orchestration logic | Shell scripts outside compose | First-class Python in workflow.py |
| Migration from compose | -- | cutip from-compose converts any compose file |
Install
pip install cutip
Getting Started
cutip init
cutip validate
cutip run hello-world
Documentation
License
Project details
Release history Release notifications | RSS feed
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 cutip-0.2.5.tar.gz.
File metadata
- Download URL: cutip-0.2.5.tar.gz
- Upload date:
- Size: 256.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e8dbe4c5a6b624169b85fa5b5044418a7a719e11b41b27a186879a12e3534d9
|
|
| MD5 |
eabe759ad7f2ee8786f31905e9d7e267
|
|
| BLAKE2b-256 |
7be7ed51d7740bd34535134c4c54b03205784d1624dd580af03a3d00c85f3132
|
File details
Details for the file cutip-0.2.5-py3-none-any.whl.
File metadata
- Download URL: cutip-0.2.5-py3-none-any.whl
- Upload date:
- Size: 116.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8acbc68b1fc8b487b4a9de3abdcf20a82ed81d98dbdc3779029799bd09dcb6d5
|
|
| MD5 |
b1dc3e12df49102399829e8b2ea2f77a
|
|
| BLAKE2b-256 |
e1033559c254fea826e9a5e3e6f3a1503a625ad62c92cb4a09a9eca458f2c60f
|