summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Provaznik <jprovaznik@gitlab.com>2018-11-13 09:45:10 +0100
committerJan Provaznik <jprovaznik@gitlab.com>2018-11-22 13:17:55 +0100
commit4c6073974c3889f26c99ebfb578a987e86328d7c (patch)
tree9516e17647bef169be6913154a18886db679e372
parent2e3dab38295b7c36ab100f20c654fdfaf9b00885 (diff)
downloadgitlab-ce-4c6073974c3889f26c99ebfb578a987e86328d7c.tar.gz
Add version migration support to rails 4
When switching to rails 5, we added migration version to all migration classes. This patch makes it possible to run versioned migrations also with rails 4
-rw-r--r--config/application.rb3
-rw-r--r--lib/rails4_migration_version.rb16
2 files changed, 19 insertions, 0 deletions
diff --git a/config/application.rb b/config/application.rb
index 921baa5d617..796aa85e113 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -26,6 +26,9 @@ module Gitlab
# setting disabled
require_dependency Rails.root.join('lib/mysql_zero_date')
+ # This can be removed when we drop support for rails 4
+ require_dependency Rails.root.join('lib/rails4_migration_version')
+
# Settings in config/environments/* take precedence over those specified here.
# Application configuration should go into files in config/initializers
# -- all .rb files in that directory are automatically loaded.
diff --git a/lib/rails4_migration_version.rb b/lib/rails4_migration_version.rb
new file mode 100644
index 00000000000..ae48734dfad
--- /dev/null
+++ b/lib/rails4_migration_version.rb
@@ -0,0 +1,16 @@
+# rubocop:disable Naming/FileName
+# frozen_string_literal: true
+
+# When switching to rails 5, we added migration version to all migration
+# classes. This patch makes it possible to run versioned migrations
+# also with rails 4
+
+unless Gitlab.rails5?
+ module ActiveRecord
+ class Migration
+ def self.[](version)
+ Migration
+ end
+ end
+ end
+end