A collaborative framework for managing database development with Flyway, safely and efficiently, across teams and environments.
The Flyway Teamwork Framework extends core Flyway into a complete, practical workflow for team-based database development. It helps database developers, DBAs, and DevOps engineers collaborate effectively on complex databases, with full versioning, auditability, rollback, and branch-based workflows — all while preserving the discipline and simplicity that Flyway encourages.
At its core, Flyway Teamwork allows you to:
- Manage branch-based development while maintaining strict control over schema changes.
- Cleanly separate design-time and deployment-time concerns.
- Capture not only database structure, but also intent, documentation, rationale, and approval history.
- Support both imperative and declarative approaches as needed.
- Allow seamless handoff between developers and operations teams.
This framework helps you treat your database not as an afterthought but as a full participant in modern version-controlled, CI/CD-based software delivery pipelines.
Most database tools focus on generating change scripts — but team-based development adds additional complexity:
- Multiple developers working simultaneously.
- Feature branches that may diverge and converge.
- Reviewing and approving complex schema changes.
- Retaining institutional knowledge around why a change was made.
- Handling documentation changes separately from actual schema changes.
- Ensuring confidence in both forward and backward deployment paths.
The Flyway Teamwork Framework introduces patterns, conventions, and file structures that enable safe collaborative working — while staying compatible with Flyway’s model.
The framework typically provides:
- Clear separation of design artifacts (schema model, documentation, test data, dependencies).
- Script generation patterns for both automatic and hand-crafted migration scripts.
- Metadata layers to capture narrative, ownership, review status, and deployment intent.
- Branch management guidance for feature branches, hotfixes, and release candidates.
- Integration points for:
- Flyway Desktop
- Flyway CLI
- Source control (Git, Azure DevOps, GitHub, etc.)
- CI/CD pipelines
- Development teams managing evolving databases.
- DBAs overseeing complex schema evolution.
- DevOps teams building automated database delivery pipelines.
- Enterprises seeking auditability, predictability, and traceability in schema management.
Whether you work with SQL Server, PostgreSQL, MySQL, or other RDBMS platforms, the Flyway Teamwork approach applies.
You can read the original Redgate article introducing Flyway Teamwork here:
👉 What is the Flyway Teamwork Framework?
If you're new to Flyway or Flyway Teamwork:
- Start with a clean branch-based workflow.
- Capture schema models and design intent.
- Generate and review scripts before merging.
- Deploy with confidence.
This repository includes examples, templates, and guidance to help you get started.
Note: The Flyway Teamwork Framework builds on years of practical experience from real-world teams. It’s pragmatic, flexible, and designed to evolve with your organization’s maturity.
Contributions, questions, and feedback are welcome as we continue to refine and expand the framework for the database DevOps community.
- Git installed
- Flyway Desktop and/or Flyway CLI installed
- Access to your target database platform (SQL Server, PostgreSQL, etc.)
- Clone this repository:
git clone https://github.com/your-org/flyway-teamwork-project.git- Create your branch:
git checkout -b feature/my-first-change-
Capture schema into design folder using Flyway Desktop or
flyway schemacommand. -
Generate migration script:
- Use Flyway Desktop to generate scripts
- Or write manual migrations into
/migrationsfolder
- Commit your changes:
git add .
git commit -m "Added new table for orders"-
Push to repository and open pull request.
-
Run CI/CD pipeline (example YAMLs provided in
/ci-templates). -
Deploy safely with confidence!
/
│
├── design/ # Schema model, captured design, and narrative metadata
├── migrations/ # Flyway versioned migration scripts
├── undo/ # (Optional) Undo scripts for Flyway Enterprise users
├── metadata/ # Change proposals, rationales, design decisions
├── documentation/ # Technical docs and internal references
├── tests/ # Integration and unit tests for database code
├── ci-templates/ # Example CI/CD pipeline configurations
└── README.md # This documentWe welcome contributions to improve and evolve the Flyway Teamwork Framework.
- Suggest new patterns or structures.
- Share scripts or examples from your own usage.
- Propose enhancements to workflows.
- Report issues or missing documentation.
- Fork this repository
- Create a feature branch
- Submit a pull request
- All submissions will be reviewed before merge.
Thank you for helping build better collaborative workflows for database teams!