page:recipes:inventory manager:django:relational workspace

Host inventory manager with Django: relational workspace data

Deploy a inventory manager built with Django on Ample using the relational records pattern. Compute runs the app in an isolated microVM behind a public HTTPS URL, a managed PostgreSQL 16 database is auto-provisioned and injected as DATABASE_URL. Verified on Django: a workspace-scoped table, an explicit state machine (draft to review to published) that rejects invalid transitions, and a cross-workspace read that returns nothing (transitions=true isolation=true). Not separately tested: your record schema, states and access rules; treat the inventory manager-specific behavior as your application code.

Representative Queries

Resource Requirements

Infrastructure Requirements

  1. Compute

    • Status: verified
    • Summary: Apps run in isolated x86_64 Firecracker microVMs that auto-pause when idle and wake on request; sizes are the priced VM sizes.
  2. Postgres

    • Status: verified
    • Summary: Managed PostgreSQL 16 runs in its own microVM and is auto-provisioned when an app needs a database and no DATABASE_URL is supplied.

Execution Status

Prerequisites

Tested Configuration

Input Schema

Workflow Steps

  1. Build and start
    • pip install into .ample/python from requirements.txt, then waitress serving project.wsgi from run.py reading PORT on the python-3.12 template.
  2. Implement the pattern on PostgreSQL
    • The fixture's module implements relational records: a workspace-scoped table, an explicit state machine (draft to review to published) that rejects invalid transitions, and a cross-workspace read that returns nothing (transitions=true isolation=true).
  3. Deploy
    • Run the synchronous deploy once and read the result (exit 0 live, 1 failed, 2 blocked).
    • Command: ample deploy . --name --public --start "python3 run.py"
  4. Verify
    • Fetch the live URL and the pattern self-test route(s) (/p/relational-records) from the example; then run your own checks.
    • Command: ample logs --kind build

Limitations

Cost Estimate