Add SQL migration plumbing to Praefect
In order for us to use Postgres in Praefect we first need plumbing to connect to a postgres DB #1755 (closed). After that, we need to be able to manage the schema of that database: create and modify tables, indices etc.
In gitlab-rails there are strongly established patterns that tell you how to do this. In our case, we have to do more work ourselves.
-
pick a SQL migration management tool ( https://github.com/golang-migrate/migratehttps://github.com/rubenv/sql-migrate) -
figure out how to ship the migrations: what command is an administrator supposed to run to apply the migrations? !1738 (merged) -
automate running Praefect migrations in GDK -
automate running Praefect migrations in Omnibus -
automate running Praefect migrations in CNG(Praefect is not in CNG yet)
Edited by Jacob Vosmaer