A collection of database migration orchestration tools. Debee coordinates PostgreSQL operations — migrations, backups, testing, and documentation — without embedding any SQL itself. Your database logic stays in SQL files where it belongs.
Complete toolset with three cross-platform orchestrator implementations (PowerShell, Bash, Python).
See the PostgreSQL README for features, quick start, and architecture overview.
| Topic | Description |
|---|---|
| Configuration | Environment files, variables reference, local overrides |
| Operations | All operations explained, migration naming, ad-hoc scripts |
| Testing | Test runner, suites, isolation modes, shared setup |
| Version Table | Database object tracking, output formats, HTML dashboard |
| Cross-Platform | CLI reference for ps1/sh/py, platform guidance |
| Changelog | Version history and migration notes |
# PowerShell
.\debee.ps1 -Operations fullService
# Bash
./debee.sh -o fullService
# Python
python debee.py -o fullServiceInteractive dashboard for exploring database objects across migrations. See Version Table docs.
debee/
├── README.md # This file
└── postgresql/ # PostgreSQL tools
├── README.md # PostgreSQL overview & quick start
├── CHANGELOG.md # Version history
├── debee.ps1 # PowerShell orchestrator
├── debee.sh # Bash orchestrator
├── debee.py # Python orchestrator
├── extract-db-objects.py # Database object extractor
├── version_table_template.html # HTML dashboard template
└── docs/
├── configuration.md # Environment & variables
├── operations.md # Operations reference
├── testing.md # Test framework
├── version-table.md # Object tracking & formats
└── cross-platform.md # CLI reference & platform guide
The project structure is designed for expansion:
debee/
├── postgresql/ # Current
├── mysql/ # Planned
├── sqlserver/ # Planned
└── oracle/ # Planned
- PostgreSQL client tools (
psql,pg_restore) - One of: PowerShell 5.1+, Bash 4.0+, or Python 3.6+
- Python 3.6+ (for
extract-db-objects.py, standard library only)
- Store credentials in
.debee.envfiles (gitignored) - Use environment-specific configuration files
- Restrict file permissions on configuration files
