-
Notifications
You must be signed in to change notification settings - Fork 848
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make the migrations not suck #1793
Comments
Have we considered using goose or mattes/migrate They both support down migrations and have lots of features we might need |
https://github.com/mattes/migrate appears to be younger yet nearly have twice the contributors and more consistent activity. It also supports more than sql which might be useful down the road. This would be my vote between the two. |
Another thing to note: a lot of these tools just have you write We should consider what we would have to do if all we could write was |
Im not sure we can get away with running all the |
I think it is worth noting that the mattes/migrate project is considering the ability to have a shell migration driver. mattes/migrate#171 |
Yeah it looks like https://github.com/mattes/migrate is the winner. We're going to go with We are also planning to collapse all pre-3.6 migrations into a bootstrap schema. This means all migrations from pre-3.6 deployments will have to migrate to 3.6 first. |
#1793 Submodule src/github.com/concourse/atc 4041978..e5f8a19: > Acquire a lock when running database migrations > Fix transaction in migration test > Add migration for updating resource_caches unique constraint > Remove resource_spaces migration since it got reverted > Fix down migration issues > Fix issue with resource_spaces_id_seq > Run migrations in transactions > Do not truncate new version table in test helper > Add test helpers for migration refactor > use mattes/migrate for database migrations > create bootstrap schema from v3.6.0 Submodule src/github.com/mattes/migrate 000000000...69472d5f5 (new submodule) Signed-off-by: Rui Yang <ryang@pivotal.io>
I didn't see anything for the "Some obvious way to make a new migration" goal, so I went ahead and added a script: ./scripts/create-migration some_migration_name All this does is install the I haven't decided yet where to document this ( Accepting! |
Here are some annoyances with our current migration stack:
Here are some things we have to get right:
Here are some goals for whatever we do to fix this:
The text was updated successfully, but these errors were encountered: