Sha256: dc3f5335434d84111ac43cc72356c53f65ffc54b136650157080047b2b86d728
Contents?: true
Size: 824 Bytes
Versions: 3
Compression:
Stored size: 824 Bytes
Contents
module MinceMigrator module Migrations require_relative '../migration' require_relative 'runner_validator' require 'mince/config' class Runner attr_reader :name, :validator def initialize(options) if options[:migration] @migration = options[:migration] @name = migration.name elsif options[:name] @name = options[:name] end @validator = RunnerValidator.new(migration) end def can_run_migration? validator.call end def run_migration migration.run RanMigration.create(name: migration.name) true end def reasons_for_failure validator.errors.join(" ") end def migration @migration ||= Migration.find(name) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mince_migrator-1.0.2 | lib/mince_migrator/migrations/runner.rb |
mince_migrator-1.0.1 | lib/mince_migrator/migrations/runner.rb |
mince_migrator-1.0.0 | lib/mince_migrator/migrations/runner.rb |