lib/tasks.rb in zfben_rails_jobs-0.0.4 vs lib/tasks.rb in zfben_rails_jobs-0.0.5
- old
+ new
@@ -1,7 +1,13 @@
+require 'fileutils'
+
namespace :jobs do
- jobs_root = Rails.root.join('tmp/jobs').to_s
+ if defined? Rails
+ jobs_root = Rails.root.join('tmp/jobs').to_s
+ else
+ jobs_root = File.realpath('.') << '/tmp/jobs'
+ end
desc 'Init Jobs Folders'
task :init do
FileUtils.mkdir(jobs_root) unless File.exists? jobs_root
end
@@ -14,21 +20,19 @@
desc 'Run Jobs'
task :run => [:init, :environment] do
File.open(jobs_root + '/.lock', 'w'){ |f| f.write Process.pid.to_s }
print "Starting jobs at process##{Process.pid}\n"
loop do
- list = Dir[jobs_root + '*']
+ list = Dir.glob(jobs_root + '/[a-z0-9-]*')
if list.length > 0
print "#{list.length} jobs found, running..\n"
list.each do |id|
print "Run Job##{id}@#{Time.now.to_s}\n"
jobs = Jobs.new
jobs.import File.basename(id)
print "Jobs detail: #{jobs.data}\n"
- jobs.run
+ print "Jobs result: #{jobs.run}\n"
end
- else
- print "No job found, skipping..\n"
end
sleep 10
end
end