Advertisement
Guest User

Untitled

a guest
Jan 16th, 2012
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2.  
  3. # This script handles starting and stopping of resque workers
  4.  
  5. require File.dirname(__FILE__) + '/../config/environment'
  6. require 'yaml'
  7.  
  8. rails_root = File.dirname(__FILE__) + '/..'
  9. rails_env = ENV['RAILS_ENV'] || 'development'
  10.  
  11. worker_config = YAML.load_file(rails_root + '/config/resque_work.yml')[rails_env]
  12.  
  13. begin
  14. case ARGV[0]
  15.  
  16. when 'start'
  17. count = worker_config['count'] || 1
  18. puts "#{count} workers being started"
  19. count.times do
  20. puts "Worker started." if Resque::Worker.new(worker_config['queue']).startup
  21. end
  22. puts "#{Resque.workers.length} workers running"
  23. when 'stop'
  24. workers = Resque.workers
  25. puts "#{workers.length} workers running"
  26. workers.each do |worker|
  27. worker.shutdown!
  28. worker.unregister_worker
  29. end
  30. puts "#{Resque.workers.length} workers running"
  31. when 'run'
  32. else
  33. puts "usage: start|stop|run"
  34. end
  35. rescue => e
  36. HoptoadNotifier.notify(e)
  37. raise
  38. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement