page:recipes:form collection:phoenix:data imports

Host form collection with Phoenix: structured data imports

Deploy a form collection built with Phoenix on Ample using the bulk import staging 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, a private S3-compatible bucket holds objects with credentials delivered as encrypted environment variables. Verified on Phoenix: a CSV staged as an object, row-level validation with per-row errors recorded, and a restart-safe import keyed by import id (imported=2 rejected=1 restart=ok). Not separately tested: your import format, mapping and conflict rules; treat the form collection-specific behavior as your application code.

Representative Queries

Resource Requirements

Infrastructure Requirements

Prerequisites

  1. A Phoenix project that builds and starts with the documented commands.
  2. A PostgreSQL driver reading DATABASE_URL at runtime.
  3. A bucket created with ample bucket create with its credentials passed as encrypted S3_* environment variables.
  4. An Ample account token with appropriate permissions.

Workflow Steps

  1. Build and start:

    • mix deps.get, MIX_ENV=prod mix compile and mix release in the builder, then the release bin script with PHX_SERVER=true on the elixir-1.18 template; PORT, DATABASE_URL and SECRET_KEY_BASE read in config/runtime.exs. The server must bind 0.0.0.0 on PORT.
  2. Implement the pattern on PostgreSQL:

    • The fixture's module implements bulk import staging: a CSV staged as an object, row-level validation with per-row errors recorded, and a restart-safe import keyed by import id.
  3. Wire object storage:

    • Create the bucket(s), then pass endpoint, region, bucket and keys as --env values.
  4. Deploy:

    • Run the synchronous deploy once and read the result.
  5. Verify:

    • Fetch the live URL and run your own checks.

Success Checks

Limitations

Cost Estimate

Evidence Summary

Known Unknowns

Format Links

Next Actions

  1. Browse the catalog index
  2. Search published recipes by intent, stack and constraints
  3. Prepare a side-effect-free deployment plan for an authorized project
  4. Read the existing agent authentication setup
  5. Browse Form collection
  6. Browse Phoenix
  7. Browse Bulk import staging
  8. Browse Deploy web app