Migrations
schemachange owns table structure — the one part of the Snowflake schema Terraform doesn't touch. See Snowflake resources & RBAC for that boundary.
Stock and Redbook each have their own migrations/ folder, their own change-history table, and their own deploy script — there's no shared migration state between them.
At a glance
| Versioned files | V{n}__description.sql — run once, ever, never edited after merge |
| Repeatable files | R__description.sql — re-run whenever their checksum changes |
| Deploy tool | schemachange, via each project's migrations/deploy-migrations.sh |
| History tables | One per project — VEHICLE_STOCK_SCHEMA.SCHEMACHANGE_HISTORY, REDBOOK_SCHEMA.SCHEMACHANGE_HISTORY |
Start here
- Adding or changing a table? Writing a migration — versioned vs repeatable, naming, conventions.
- Ready to run one? Deploying migrations — how schemachange decides what to run, and where the two projects' scripts differ. For copy-paste commands, see Deploying migrations locally.
- Checking what's already applied? Migration history & status.