# gemfile
source 'http://rubygems.org'
gem 'thin'
gem 'pg'
gem 'json'
gem 'yajl-ruby'
gem 'activerecord'
gem 'rufus-scheduler'
gem 'rake'
gem 'activerecord', :require => 'active_record'
gem 'net-sftp'
gem 'net-ssh'
gem 'jeweler'
group :test do
gem 'rspec'
gem 'rack-test'
gem 'net-http-spy'
end
~
~
#pw_data_extract.rb
require_relative 'import.rb'
require 'rubygems'
require 'json'
require 'active_record'
Dir.glob('models/*').each { |r| require r }
require 'uri'
require 'net/http'
require 'net/ssh'
require 'net/sftp'
include Net
module PWDataExtract
def self.included(base)
base.extend ClassMethods
end
def ensure_unique(name)
begin
self[name] = yield
end while self.class.exists?(name => self[name])
end
def PWDataExtract.load_data
ActiveRecord::Base.establish_connection(YAML.load(File.read(File.join('config','database.yml')))[ENV['ENV'] ? ENV['ENV'] : 'development'])
# Run immediately first
download_files
import_files
end
module ClassMethods
end
end
#Rakefile
$LOAD_PATH.unshift(Dir.getwd)
require 'rubygems'
require 'rake'
require 'jeweler'
#require 'echoe'
require 'bundler'
Bundler.require
namespace :db do
task :migrate do
ActiveRecord::Base.establish_connection(YAML.load(File.read(File.join('config','database.yml')))[ENV['ENV'] ? ENV['ENV'] : 'development'])
ActiveRecord::Migrator.migrate("db/migrate/")
end
task :seed do
seed_file = "./db/seeds.rb"
puts "Seeding database from: #{seed_file}"
load(seed_file) if File.exist?(seed_file)
end
end
Jeweler::Tasks.new do |gem|
#gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
gem.name = "pw_data_extract"
# gem.add_dependency 'activesupport','=3.2.6'
# gem.add_dependency 'net-ssh'
gem.summary = %Q{Dun dun dun}
gem.description = %Q{Populating dbs because Max is gone}
gem.email = "jordanmprince@gmail.com"
gem.homepage = "http://github.com/bhgames/pw_data_extract"
gem.authors = ["Jordan Prince"]
end
Jeweler::RubygemsDotOrgTasks.new
~