Announcing v0.6.0 with Versioned Migration Authoring
With the release of v0.6.0, we are happy to announce official support for a style of workflow for managing changes to database schemas that we have been experimenting with in the past months: Versioned Migration Authoring.
TL;DR
- Atlas supports a declarative workflow (similar to Terraform) where users provide the
desired database schema in a simple data definition language
and Atlas calculates a plan to get a target database to that state. This workflow
is supported by the
schema apply
command. - Many teams prefer a more imperative approach where each change to the database schema is checked-in to source control and reviewed during code-review. This type of workflow is commonly called versioned migrations (or change based migrations) and is supported by many established tools such as Flyway and Liquibase.
- The downside of the versioned migration approach is, of course, that it puts the burden of planning the migration on developers. As part of the Atlas project we advocate for a third combined approach that we call "Versioned Migration Authoring".
- Versioned Migration Authoring is an attempt to combine the simplicity and expressiveness of the declarative approach with the control and explicitness of versioned migrations.
- To use Versioned Migration Authoring today, use the
atlas migrate diff
command. See the Getting Started section below for instructions.