class Trackington::RakeTask

Public Class Methods

new() click to toggle source
# File lib/trackington/rake/task.rb, line 10
def initialize
  namespace :trackington do
    namespace :db do
      task :migrate do
        establish_connection

        migrate
      end
    end
  end
end

Private Instance Methods

establish_connection() click to toggle source
# File lib/trackington/rake/task.rb, line 24
def establish_connection
  db_query = ENV['DB_QUERY']

  db = URI.parse(db_query)

  ActiveRecord::Base.establish_connection(
    adapter:  db.scheme == 'postgres' ? 'postgresql' : db.scheme,
    host:     db.host,
    username: db.user,
    password: db.password,
    database: db.path[1..-1],
    encoding: 'utf8')
end
migrate() click to toggle source
# File lib/trackington/rake/task.rb, line 38
def migrate
  migrations_path = File.expand_path('../../db/migrate', __FILE__)

  ActiveRecord::Migrator.migrate(migrations_path, nil)
end