No commit activity in last 3 years
No release in over 3 years
Wraps ActiveRecord and Logger for use in non-Rails environments
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

ActiveWrapper

Wraps ActiveRecord and Logger for use in non-Rails environments.

Compatibility

Maintained under Ruby 1.9.2.

Setup

gem install active_wrapper

Usage

require 'rubygems'
require 'active_wrapper'

$db, $log = ActiveWrapper.setup(
  :base => File.dirname(__FILE__),
  :env => 'development',
  :log => 'custom',
  :stdout => true
)

$db.drop_db
$db.create_db
$db.establish_connection
$db.generate_migration('my_migration')
$db.migrate('001')
$db.migrate_reset
$log.info('log this')
$log.clear

ActiveWrapper looks for the following files within the :base directory:

  • config/database.yml
  • db/migrate/*.rb

The :env option is "development" by default.

Logger

In the previous example, the log is stored in log/custom.log.

If no :log name is specified, the :env option is used for the log name.

You may also set :log to false to disable logging entirely.

Setting :stdout to true causes stdout and stderr to redirect to the logger. It is false by default.

Rakefile

Add this to your project's Rakefile for database migration and log tasks:

require 'rubygems'
require 'rake'
require 'active_wrapper/tasks'

ActiveWrapper::Tasks.new(:log => 'custom') do
  # Put stuff you would normally put in the environment task here
end

Pass the same options to ActiveWrapper::Tasks.new as you would ActiveWrapper.new.