Class: RailsPulse::Installers::MigrationInstaller

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_pulse/installers/migration_installer.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(output: $stdout) ⇒ MigrationInstaller

Returns a new instance of MigrationInstaller.



10
11
12
13
# File 'lib/rails_pulse/installers/migration_installer.rb', line 10

def initialize(output: $stdout)
  @output = output
  @stats = { copied: [], skipped: [] }
end

Instance Attribute Details

#outputObject (readonly)

Returns the value of attribute output.



4
5
6
# File 'lib/rails_pulse/installers/migration_installer.rb', line 4

def output
  @output
end

#statsObject (readonly)

Returns the value of attribute stats.



4
5
6
# File 'lib/rails_pulse/installers/migration_installer.rb', line 4

def stats
  @stats
end

Class Method Details

.install(output: $stdout) ⇒ Object



6
7
8
# File 'lib/rails_pulse/installers/migration_installer.rb', line 6

def self.install(output: $stdout)
  new(output: output).install
end

Instance Method Details

#installObject



15
16
17
18
19
20
21
22
23
# File 'lib/rails_pulse/installers/migration_installer.rb', line 15

def install
  output.puts "Copying migrations..."

  migration_order.each_with_index do |migration_name, index|
    process_migration(migration_name, index)
  end

  @stats
end