adepanges/schema-diff
Migration-tool agnostic database schema diff — detects schema changes across any migration tool
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| db-engine | Database engine: postgres | mysql | sqlite | yes | — |
| db-version | Docker image version tag (e.g. "15", "8.0", "latest") | no | latest |
| migrate-command | Shell command to run your migrations (e.g. "npx db-migrate up" or "flyway migrate") | yes | — |
| migrations-path | Working directory for the migration command (defaults to repository root) | no | . |
| baseline-branch | Branch to compare schema against (informational — used with baseline DBML artifact) | no | main |
| post-pr-comment | Post the diff report as a PR comment | no | true |
| github-token | GitHub token for posting PR comments (defaults to GITHUB_TOKEN env var) | no | "" |
| output-dbml | Write a DBML snapshot to the output directory | no | true |
| output-sql-dump | Write the full SQL schema dump to the output directory | no | false |
| fail-on-destructive | Fail the workflow if destructive schema changes are detected | no | false |
Outputs
| name | description |
|---|---|
| diff-report | The full schema diff report (markdown) |
| has-destructive | "true" if destructive changes were detected |
| added-tables | Comma-separated list of added table names |
| removed-tables | Comma-separated list of removed table names |
| modified-tables | Comma-separated list of modified table names |
| output-dir | Path to the directory containing output files |