class MinceMigrator::Migrations::Runner

Attributes

name[R]
validator[R]

Public Class Methods

new(options) click to toggle source
# File lib/mince_migrator/migrations/runner.rb, line 10
def initialize(options)
  if options[:migration]
    @migration = options[:migration]
    @name = migration.name
  elsif options[:name]
    @name = options[:name]
  end
  @validator = RunnerValidator.new(migration)
end

Public Instance Methods

can_run_migration?() click to toggle source
# File lib/mince_migrator/migrations/runner.rb, line 20
def can_run_migration?
  validator.call
end
migration() click to toggle source
# File lib/mince_migrator/migrations/runner.rb, line 34
def migration
  @migration ||= Migration.find(name)
end
reasons_for_failure() click to toggle source
# File lib/mince_migrator/migrations/runner.rb, line 30
def reasons_for_failure
  validator.errors.join(" ")
end
run_migration() click to toggle source
# File lib/mince_migrator/migrations/runner.rb, line 24
def run_migration
  migration.run
  RanMigration.create(name: migration.name)
  true
end