From 83c8241160ed48ab066e2c5bd58d0914a745197c Mon Sep 17 00:00:00 2001 From: Yorick Peterse Date: Thu, 27 Oct 2016 14:36:53 +0200 Subject: Support for post deployment migrations These are regular Rails migrations that are executed by default. A user can opt-out of these migrations by setting an environment variable during the deployment process. Fixes gitlab-org/gitlab-ce#22133 --- config/initializers/0_post_deployment_migrations.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 config/initializers/0_post_deployment_migrations.rb (limited to 'config') diff --git a/config/initializers/0_post_deployment_migrations.rb b/config/initializers/0_post_deployment_migrations.rb new file mode 100644 index 00000000000..0068a03d214 --- /dev/null +++ b/config/initializers/0_post_deployment_migrations.rb @@ -0,0 +1,12 @@ +# Post deployment migrations are included by default. This file must be loaded +# before other initializers as Rails may otherwise memoize a list of migrations +# excluding the post deployment migrations. +unless ENV['SKIP_POST_DEPLOYMENT_MIGRATIONS'] + path = Rails.root.join('db', 'post_migrate').to_s + + Rails.application.config.paths['db/migrate'] << path + + # Rails memoizes migrations at certain points where it won't read the above + # path just yet. As such we must also update the following list of paths. + ActiveRecord::Migrator.migrations_paths << path +end -- cgit v1.2.3