Skip to content

Instantly share code, notes, and snippets.

@bitzesty
Created February 8, 2010 21:27
Show Gist options
  • Select an option

  • Save bitzesty/298597 to your computer and use it in GitHub Desktop.

Select an option

Save bitzesty/298597 to your computer and use it in GitHub Desktop.

Revisions

  1. bitzesty created this gist Feb 8, 2010.
    30 changes: 30 additions & 0 deletions gistfile1.rb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,30 @@
    #!/usr/bin/env ruby

    require 'rubygems'
    require 'daemons'

    require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))

    Daemons.run_proc('navvy_worker', :dir => Rails.root.join('tmp/pids')) do
    logger = Logger.new Rails.root.join('log/navvy.log')

    db_config = YAML::load( IO.read Rails.root.join('config/mongodb.yml') )
    mongo = db_config[Rails.env]
    MongoMapper.connection = Mongo::Connection.new( mongo['host'] || 'localhost',
    mongo['port'] || 27017,
    :logger => logger )
    MongoMapper.database = mongo['database']

    loop do
    Navvy::Job.next.each do |job|
    result = job.run
    logger.info "* #{job.object.to_s}.#{job.method_name}\n" +
    " (#{job.args.join(', ')}) => #{result}"
    end

    sleep Navvy.configuration.sleep_time
    end

    end

    # vim ft=ruby