Skip to main content

Container Unit Templates in Python — a deterministic framework for building container workloads

Project description

CUTIP

Python 3.11+ Pydantic v2 uv Runtime CI Docs

An automation tool for containerized workflows with deterministic Python hooks at every stage of a container's lifecycle. Define infrastructure as structured YAML cards, wire them into units and groups, then orchestrate with plain Python.

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

joshuajerome.github.io/cutip

License

MIT

Project details


Download files

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

Source Distribution

cutip-0.2.3.tar.gz (247.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cutip-0.2.3-py3-none-any.whl (107.9 kB view details)

Uploaded Python 3

File details

Details for the file cutip-0.2.3.tar.gz.

File metadata

  • Download URL: cutip-0.2.3.tar.gz
  • Upload date:
  • Size: 247.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","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

Hashes for cutip-0.2.3.tar.gz
Algorithm Hash digest
SHA256 8b94712bd41e3e412d82c8e4aa6a82c7c2e86d6d0e4958fe4692e09d1a0bfbf7
MD5 24dcc5283a98ded79a6d6bc8e8fbc58b
BLAKE2b-256 dd864d3de29ebb6d21d0dd73cf0f2ae11cb61a3038967eed93751b4da937c2c7

See more details on using hashes here.

File details

Details for the file cutip-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: cutip-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 107.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","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

Hashes for cutip-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 47a863fe407aadb124320d27a34d932b4ad08ef832ae725d51805ff5afd6af7a
MD5 ed82acbfb058fd94848a69ab4f36787e
BLAKE2b-256 e5da13433b8c1498a9b220f33f408dda437fd8ab53aee9b8a9c9c2c0cffd84f5

See more details on using hashes here.

Supported by

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