Class: Localtower::Status

Inherits:
Object
  • Object
show all
Defined in:
lib/localtower/status.rb

Instance Method Summary collapse

Instance Method Details

#runObject



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/localtower/status.rb', line 3

def run
  files = Dir["#{Rails.root}/db/migrate/*.rb"].sort.reverse

  names = files.map do |file_full_path|
    file_full_path.split("/")[-1]
  end

  results = []

  migrations = ActiveRecord::Base.connection.execute("select * from schema_migrations;").map { |e| e["version"].to_s }.sort.reverse

  names.each do |name|
    number = name.split("_")[0]

    status = migrations.include?(number) ? 1 : 0

    data = {
      "name" => name,
      "status" => status,
    }

    results << data
  end

  results
end