0.01
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

Development

>= 0.8.7
~> 1.0

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.