(semi) automated way of marking migrations as causing downtime
In order to automate the deployment process of GitLab(.com) as much as possible we'll need a way to (automatically) determine if a migration causes downtime or not.
There are two paths that we can take:
- Require developers adding migrations to manually "tag" them to indicate if they cause downtime or not
- Automatically analyse newly added migrations to see if they cause downtime (e.g. adding a new column with a default value)
Option 1 is the easiest implementation wise as all we'd have to scan for is some kind of special tag. Option 2 is in theory the most rigid since we won't have to depend on developers tagging migrations.