CLI Reference¶
Syntax¶
dbwarden [GLOBAL_OPTIONS] COMMAND [ARGS] [COMMAND_OPTIONS]
Global Options¶
| Option | Description |
|---|---|
--dev |
Use dev_database_url / dev_database_type for selected database |
--strict-translation |
Fail on lossy SQL translation in dev SQLite workflows |
--help, -h |
Show help |
Command Index¶
Setup:
initdatabase listdatabase adddatabase remove
Migration authoring:
make-migrationsnewsquash
Migration execution:
migraterollback
Inspection:
statushistorycheck-dbdiff
Operations:
lock-statusunlockversion
Common Usage Examples¶
# initialize
dbwarden init
# generate migration from models
dbwarden make-migrations "add billing tables" -d primary
# apply migrations
dbwarden migrate -d primary
# apply migrations in development mode
dbwarden --dev migrate -d primary
# strict translation check for dev SQLite
dbwarden --dev --strict-translation make-migrations "sync" -d primary
# inspect state
dbwarden status -d primary
dbwarden history -d primary
Multi-Database Patterns¶
# one database
dbwarden migrate -d analytics
# all databases sequentially
dbwarden migrate --all
If --all is used, DBWarden iterates through configured database names in config order.
Internal Behavior of Global Flags¶
--dev:
- Enables runtime dev mode
- Switches active config from
sqlalchemy_urltodev_database_url - Keeps migration directory and database selection semantics unchanged
--strict-translation:
- Enables strict translation mode
- During model-to-SQL generation, unsupported SQLite conversions raise errors
- Prevents silent fallback to
TEXT
Conceptual callback flow:
def app_callback(dev=False, strict_translation=False):
set_dev_mode(dev)
set_strict_translation(strict_translation)
Option Cheatsheet¶
| Command | Main options |
|---|---|
migrate |
-d, --all, -c, -t, -v, --baseline, --with-backup |
rollback |
-d, -c, -t, -v, --all |
make-migrations |
-d, -v |
check-db |
-d, -o |
status |
-d, --all |
Tips¶
- Use
dbwarden <command> --helpfor full per-command details. - Prefer
--devfor local iteration andmigrate -d <name>for production-like validation. - In CI, run
statusbefore and aftermigrateto make changes auditable.