Module: ActiveAdmin::Favorites::MigrationHelpers

Defined in:
lib/activeadmin/favorites/migration_helpers.rb

Class Method Summary collapse

Class Method Details

.append_engine_migrations!(app) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/activeadmin/favorites/migration_helpers.rb', line 17

def append_engine_migrations!(app)
  return if app.root.to_s.start_with?(ActiveAdmin::Favorites::Engine.root.to_s)

  host_versions = host_migration_versions(app.root)
  paths = app.config.paths["db/migrate"]
  return if paths.frozen?

  engine_migration_paths.each do |migration_path|
    version = File.basename(migration_path).split("_", 2).first
    next if host_versions.include?(version)
    next if paths.include?(migration_path)

    paths << migration_path
  end
end

.engine_migration_pathsObject



8
9
10
11
# File 'lib/activeadmin/favorites/migration_helpers.rb', line 8

def engine_migration_paths
  root = ActiveAdmin::Favorites::Engine.root
  Dir[root.join("db/migrate/*.rb")].sort
end

.host_migration_versions(app_root) ⇒ Object



13
14
15
# File 'lib/activeadmin/favorites/migration_helpers.rb', line 13

def host_migration_versions(app_root)
  Dir[app_root.join("db/migrate/*.rb")].map { |path| File.basename(path).split("_", 2).first }
end