dblift preflight is the connected rehearsal of a release. It reads a snapshot, plans what would run, and writes a report. A replay mode is required: replay pending scripts against a throwaway schema, reuse an existing container, or skip replay. With --skip-replay it does not talk to a live database.
Run a preflight
Exactly one of --container-image, --container-existing, or --skip-replay is required.
dblift preflight --env uat --skip-replay --format json,html --output-dir dblift-reports --fail-on error
The environment's snapshot source is the input. --snapshot-model overrides it.
What preflight checks
- pending versioned and repeatable migrations
- checksum drift against the snapshot
- SQL validation of planned scripts
- a rehearsed replay of those scripts, when the engine can isolate a throwaway schema
Replayed scripts in the KPI band is the number to check: a zero there means nothing was actually rehearsed.
Fail-on and verdicts
The verdict is decided by --fail-on. A report full of warnings still says PASS when the threshold is error.
| Threshold | What blocks |
|---|---|
error | Checksum drift, snapshot integrity failures, SQL policy errors. |
warning | Also large backfills and transaction-boundary assumptions. |