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.0.tar.gz (238.6 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.0-py3-none-any.whl (99.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cutip-0.2.0.tar.gz
  • Upload date:
  • Size: 238.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","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.0.tar.gz
Algorithm Hash digest
SHA256 26453b8ecdb15e8e14433136a2396ecb74273f51d527eccf4b4521027d6929d1
MD5 7a01f9695a701deee80da26781e5f3cc
BLAKE2b-256 fd6ba2fd43e2528916bfda5e41a405afab870ab1b8ac7efcae475e72093e2a5a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cutip-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 99.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f3de31e876bdaa76853f4bde3e00942fd5844fe881cee3e79d6b71eef12c5e62
MD5 f7073d71133be638ddb9f2c440e295d7
BLAKE2b-256 1940096f6bbd2f4d86014abc12cc8e5ee3b07fd9fa945396feb9fcd625190f71

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