Have CI automatically test migration paths
We can have a build that runs a script that:
- Resets
db/schema.rb
anddb/fixtures
to the last release (based on theVERSION
file and thev[VERSION]
tag) - Runs
rake db:setup
andrake db:seed_fu
(or a subset thereof) to set up the database with some "old" data - Runs
rake db:migrate
to migrate to new data - Verifies that all of this happens without errors
We could do the same thing on EE to simulate a CE->EE upgrade. This way we should be able to prevent stuff like https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/290 from happening.
cc @ayufan @marin @dzaporozhets @zj
Thoughts?