starting Resque
This commit is contained in:
parent
d2e77d6bf8
commit
0a9ad1dfb6
2
Gemfile
2
Gemfile
|
@ -19,6 +19,8 @@ gem "mongo_session_store-rails3"
|
||||||
gem 'nokogiri'
|
gem 'nokogiri'
|
||||||
gem 'radius'
|
gem 'radius'
|
||||||
gem 'rake'
|
gem 'rake'
|
||||||
|
gem 'resque-scheduler', :require => 'resque_scheduler'
|
||||||
|
gem 'resque', :require => "resque/server"
|
||||||
gem 'ruby-debug19'
|
gem 'ruby-debug19'
|
||||||
gem 'rubyzip'
|
gem 'rubyzip'
|
||||||
gem 'sinatra'
|
gem 'sinatra'
|
||||||
|
|
18
Gemfile.lock
18
Gemfile.lock
|
@ -153,6 +153,18 @@ GEM
|
||||||
rake (0.9.2.2)
|
rake (0.9.2.2)
|
||||||
rdoc (3.12)
|
rdoc (3.12)
|
||||||
json (~> 1.4)
|
json (~> 1.4)
|
||||||
|
redis (2.2.2)
|
||||||
|
redis-namespace (1.0.3)
|
||||||
|
redis (< 3.0.0)
|
||||||
|
resque (1.20.0)
|
||||||
|
multi_json (~> 1.0)
|
||||||
|
redis-namespace (~> 1.0.2)
|
||||||
|
sinatra (>= 0.9.2)
|
||||||
|
vegas (~> 0.1.2)
|
||||||
|
resque-scheduler (1.9.9)
|
||||||
|
redis (>= 2.0.1)
|
||||||
|
resque (>= 1.8.0)
|
||||||
|
rufus-scheduler
|
||||||
rspec (2.8.0)
|
rspec (2.8.0)
|
||||||
rspec-core (~> 2.8.0)
|
rspec-core (~> 2.8.0)
|
||||||
rspec-expectations (~> 2.8.0)
|
rspec-expectations (~> 2.8.0)
|
||||||
|
@ -182,6 +194,8 @@ GEM
|
||||||
ruby_parser (2.3.1)
|
ruby_parser (2.3.1)
|
||||||
sexp_processor (~> 3.0)
|
sexp_processor (~> 3.0)
|
||||||
rubyzip (0.9.6.1)
|
rubyzip (0.9.6.1)
|
||||||
|
rufus-scheduler (2.0.16)
|
||||||
|
tzinfo (>= 0.3.23)
|
||||||
ruport (1.6.3)
|
ruport (1.6.3)
|
||||||
fastercsv
|
fastercsv
|
||||||
pdf-writer (= 1.1.8)
|
pdf-writer (= 1.1.8)
|
||||||
|
@ -222,6 +236,8 @@ GEM
|
||||||
uglifier (1.2.3)
|
uglifier (1.2.3)
|
||||||
execjs (>= 0.3.0)
|
execjs (>= 0.3.0)
|
||||||
multi_json (>= 1.0.2)
|
multi_json (>= 1.0.2)
|
||||||
|
vegas (0.1.11)
|
||||||
|
rack (>= 1.0.0)
|
||||||
warden (1.1.1)
|
warden (1.1.1)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
watchr (0.7)
|
watchr (0.7)
|
||||||
|
@ -259,6 +275,8 @@ DEPENDENCIES
|
||||||
radius
|
radius
|
||||||
rails (>= 3.1.0, < 3.2.0)
|
rails (>= 3.1.0, < 3.2.0)
|
||||||
rake
|
rake
|
||||||
|
resque
|
||||||
|
resque-scheduler
|
||||||
rspec (~> 2.0)
|
rspec (~> 2.0)
|
||||||
rspec-rails (~> 2.0)
|
rspec-rails (~> 2.0)
|
||||||
ruby-debug19
|
ruby-debug19
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
require 'open-uri'
|
||||||
|
require 'nokogiri'
|
||||||
|
module FetchTime
|
||||||
|
@queue = :fetch_time
|
||||||
|
|
||||||
|
def self.perform()
|
||||||
|
sleep 10
|
||||||
|
doc = Nokogiri::HTML(open('http://www.timeanddate.com/worldclock/city.html?n=241'))
|
||||||
|
CronMail.time_check(doc.at('#ct').children.first.text).deliver
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,8 @@
|
||||||
|
class CronMail < ActionMailer::Base
|
||||||
|
default :from => "orbit_test@rulingcom.com"
|
||||||
|
|
||||||
|
def time_check(msg)
|
||||||
|
#attachments["rails.png"] = File.read("#{Rails.root}/public/images/rails.png")
|
||||||
|
mail(:to => "Matt <matt@rulingcom.com>", :subject => msg)
|
||||||
|
end
|
||||||
|
end
|
|
@ -29,16 +29,16 @@ Orbit::Application.configure do
|
||||||
# :sender_address => %{"notifier" <redmine@rulingcom.com>},
|
# :sender_address => %{"notifier" <redmine@rulingcom.com>},
|
||||||
# :exception_recipients => %w{chris@rulingcom.com}
|
# :exception_recipients => %w{chris@rulingcom.com}
|
||||||
|
|
||||||
# config.action_mailer.delivery_method = :smtp
|
config.action_mailer.delivery_method = :smtp
|
||||||
# config.action_mailer.smtp_settings = {
|
config.action_mailer.smtp_settings = {
|
||||||
# :tls => true,
|
:tls => true,
|
||||||
# :enable_starttls_auto => true,
|
:enable_starttls_auto => true,
|
||||||
# :address => "smtp.gmail.com",
|
:address => "smtp.gmail.com",
|
||||||
# :port => '587',
|
:port => '587',
|
||||||
# :domain => "smtp.gmail.com",
|
:domain => "smtp.gmail.com",
|
||||||
# :authentication => "plain",
|
:authentication => "plain",
|
||||||
# :user_name => "redmine@rulingcom.com",
|
:user_name => "redmine@rulingcom.com",
|
||||||
# :password => "rulingredmine" }
|
:password => "rulingredmine" }
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
require 'resque_scheduler'
|
||||||
|
require 'resque_scheduler/server'
|
||||||
|
require 'yaml'
|
||||||
|
|
||||||
|
rails_root = ENV['RAILS_ROOT'] || File.dirname(__FILE__) + '/../..'
|
||||||
|
rails_env = ENV['RAILS_ENV'] || 'development'
|
||||||
|
|
||||||
|
resque_config = YAML.load_file(rails_root + '/config/resque.yml')
|
||||||
|
Resque.redis = resque_config[rails_env]
|
||||||
|
|
||||||
|
Resque.schedule = YAML.load_file("#{Rails.root}/config/resque_schedule.yml")
|
||||||
|
Dir["#{Rails.root}/app/jobs/*.rb"].each { |file| require file }
|
||||||
|
|
||||||
|
# current_path = Rails.root.to_s.gsub(/\s/,'\ ')
|
||||||
|
# queues = [:test]
|
|
@ -0,0 +1,2 @@
|
||||||
|
development: localhost:6379
|
||||||
|
production: localhost:6379
|
|
@ -0,0 +1,6 @@
|
||||||
|
time_to_talk_a_rest:
|
||||||
|
cron: "*/5 * * * *"
|
||||||
|
class: FetchTime
|
||||||
|
queue: daemons
|
||||||
|
rails_env: development
|
||||||
|
description: Send Email for Remind Time
|
|
@ -12,6 +12,7 @@ Orbit::Application.routes.draw do
|
||||||
|
|
||||||
# routes for admin
|
# routes for admin
|
||||||
namespace :admin do
|
namespace :admin do
|
||||||
|
mount Resque::Server.new, :at => "/resque"
|
||||||
resources :assets
|
resources :assets
|
||||||
resources :app_auths
|
resources :app_auths
|
||||||
resources :object_auths do
|
resources :object_auths do
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
require 'resque_scheduler/tasks'
|
||||||
# encoding: utf-8
|
# encoding: utf-8
|
||||||
|
|
||||||
namespace :anc do
|
namespace :anc do
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
# require "resque/tasks"
|
||||||
|
# require 'resque/scheduler'
|
||||||
|
# require 'resque/scheduler'
|
||||||
|
|
||||||
|
#
|
||||||
|
# task "resque:setup" => :environment
|
||||||
|
# Resque tasks
|
||||||
|
require 'resque/tasks'
|
||||||
|
require 'resque_scheduler/tasks'
|
||||||
|
|
||||||
|
namespace :resque do
|
||||||
|
task :setup => :environment do
|
||||||
|
require 'resque'
|
||||||
|
require 'resque_scheduler'
|
||||||
|
require 'resque/scheduler'
|
||||||
|
|
||||||
|
# you probably already have this somewhere
|
||||||
|
Resque.redis = 'localhost:6379'
|
||||||
|
|
||||||
|
# If you want to be able to dynamically change the schedule,
|
||||||
|
# uncomment this line. A dynamic schedule can be updated via the
|
||||||
|
# Resque::Scheduler.set_schedule (and remove_schedule) methods.
|
||||||
|
# When dynamic is set to true, the scheduler process looks for
|
||||||
|
# schedule changes and applies them on the fly.
|
||||||
|
# Note: This feature is only available in >=2.0.0.
|
||||||
|
#Resque::Scheduler.dynamic = true
|
||||||
|
|
||||||
|
# The schedule doesn't need to be stored in a YAML, it just needs to
|
||||||
|
# be a hash. YAML is usually the easiest.
|
||||||
|
Resque.schedule = YAML.load_file('config/resque_schedule.yml')
|
||||||
|
|
||||||
|
# If your schedule already has +queue+ set for each job, you don't
|
||||||
|
# need to require your jobs. This can be an advantage since it's
|
||||||
|
# less code that resque-scheduler needs to know about. But in a small
|
||||||
|
# project, it's usually easier to just include you job classes here.
|
||||||
|
# So, someting like this:
|
||||||
|
#require 'jobs'
|
||||||
|
end
|
||||||
|
end
|
Reference in New Issue