Merge branch '4852-migration-specs-fail-locally-if-no-geo-db-is-configured' into 'master'

Make resetting column information overridable in EE

See merge request gitlab-org/gitlab-ce!17007
This commit is contained in:
Nick Thomas 2018-02-08 17:09:12 +00:00
commit 5708241b57
1 changed files with 7 additions and 2 deletions

View File

@ -25,14 +25,19 @@ module MigrationsHelpers
clear_schema_cache!
# Reset column information for the most offending classes **after** we
# migrated the schema up, otherwise, column information could be outdated
ActiveRecord::Base.descendants.each { |klass| klass.reset_column_information }
# migrated the schema up, otherwise, column information could be
# outdated. We have a separate method for this so we can override it in EE.
ActiveRecord::Base.descendants.each(&method(:reset_column_information))
# Without that, we get errors because of missing attributes, e.g.
# super: no superclass method `elasticsearch_indexing' for #<ApplicationSetting:0x00007f85628508d8>
ApplicationSetting.define_attribute_methods
end
def reset_column_information(klass)
klass.reset_column_information
end
def previous_migration
migrations.each_cons(2) do |previous, migration|
break previous if migration.name == described_class.name