page:guides:react router:schema changes

Apply Database Schema Changes for React Router

Apply database schema changes for a React Router app on Ample with a release command. node migrate.cjs runs against the injected DATABASE_URL before the new release goes live, and the release fails instead of activating if the migration fails.

Summary

Prerequisites

Resource Requirements

Workflow Steps

  1. Write an idempotent migration: Create tables and markers with IF NOT EXISTS or a migration framework so a re-run is safe.

  2. Deploy with the release command: Ample runs the command before activation; a non-zero exit fails the release.

    Command: ample deploy . --name --public --release-command "node migrate.cjs"

  3. Verify the marker through the app: Serve a route (/migrated) that reads something only the migration creates.

  4. Verify: Fetch the live URL and run the success checks below. On failure read the build log, then the runtime log, fix the cause and deploy again; do not blind-retry.

    Command: ample logs --kind build

Success Checks

Limitations

Cost Estimate

Examples