iron_worker 2.4.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/README.md +352 -0
- data/iron_worker.gemspec +3 -8
- data/lib/iron_worker.rb +13 -51
- data/lib/iron_worker/api_client.rb +152 -0
- data/lib/iron_worker/version.rb +9 -1
- data/lib/iron_worker/worker_helper.rb +72 -0
- metadata +18 -183
- data/README.markdown +0 -73
- data/lib/generators/iron_worker/iron_worker_generator.rb +0 -13
- data/lib/generators/iron_worker/templates/template_worker.erb +0 -7
- data/lib/iron_worker/api.rb +0 -244
- data/lib/iron_worker/base.rb +0 -449
- data/lib/iron_worker/config.rb +0 -287
- data/lib/iron_worker/rails2_init.rb +0 -8
- data/lib/iron_worker/railtie.rb +0 -16
- data/lib/iron_worker/server/overrides.rb +0 -198
- data/lib/iron_worker/server/runner.rb +0 -82
- data/lib/iron_worker/service.rb +0 -644
- data/lib/iron_worker/used_in_worker.rb +0 -11
- data/lib/iron_worker/utils.rb +0 -11
- data/rails/init.rb +0 -0
- data/test/Gemfile +0 -36
- data/test/Gemfile.lock +0 -169
- data/test/README.md +0 -5
- data/test/batch_run.rb +0 -121
- data/test/config_sample.yml +0 -13
- data/test/models/cool_model.rb +0 -7
- data/test/models/db_model.rb +0 -6
- data/test/models/model_1.rb +0 -16
- data/test/models/model_2.rb +0 -16
- data/test/quick_run.rb +0 -36
- data/test/quick_schedule.rb +0 -18
- data/test/resources/something.yml +0 -4
- data/test/simple_script.rb +0 -11
- data/test/test_base.rb +0 -79
- data/test/test_database.rb +0 -31
- data/test/test_gems.rb +0 -31
- data/test/test_inheritance.rb +0 -25
- data/test/test_iron_worker.rb +0 -194
- data/test/test_merging.rb +0 -51
- data/test/test_non_worker_script.rb +0 -14
- data/test/test_rails.rb +0 -35
- data/test/test_scheduling.rb +0 -74
- data/test/test_scheduling_no_active_support.rb +0 -37
- data/test/test_service.rb +0 -28
- data/test/test_uploads.rb +0 -30
- data/test/test_webhooks.rb +0 -45
- data/test/v2quick.rb +0 -29
- data/test/workers/awesome_job.rb +0 -26
- data/test/workers/aws_s3_worker.rb +0 -10
- data/test/workers/big_data_worker.rb +0 -15
- data/test/workers/big_gems_worker.rb +0 -35
- data/test/workers/cool_worker.rb +0 -14
- data/test/workers/db_worker.rb +0 -27
- data/test/workers/fail_worker.rb +0 -10
- data/test/workers/gem_dependency_worker.rb +0 -20
- data/test/workers/hacker_worker.rb +0 -65
- data/test/workers/iw_test_worker.rb +0 -22
- data/test/workers/iw_test_worker_2.rb +0 -53
- data/test/workers/iw_test_worker_3.rb +0 -17
- data/test/workers/local_vs_remote_worker.rb +0 -9
- data/test/workers/merging_worker.rb +0 -40
- data/test/workers/mq_worker.rb +0 -21
- data/test/workers/one_line_worker.rb +0 -10
- data/test/workers/prawn_worker.rb +0 -32
- data/test/workers/progress_worker.rb +0 -26
- data/test/workers/qb_worker.rb +0 -17
- data/test/workers/rails_worker.rb +0 -24
- data/test/workers/rails_worker2.rb +0 -12
- data/test/workers/requiring_worker.rb +0 -4
- data/test/workers/running_back_worker.rb +0 -7
- data/test/workers/scheduled_worker.rb +0 -15
- data/test/workers/second_worker.rb +0 -16
- data/test/workers/third_worker.rb +0 -6
- data/test/workers/webhook_worker.rb +0 -7
- data/test/zip_vs_gzip.rb +0 -26
@@ -1,20 +0,0 @@
|
|
1
|
-
# bump..
|
2
|
-
class GemDependencyWorker < IronWorker::Base
|
3
|
-
|
4
|
-
#merge_gem "signature"
|
5
|
-
merge_gem "pusher"
|
6
|
-
|
7
|
-
attr_accessor :some_param
|
8
|
-
|
9
|
-
def run
|
10
|
-
log "Starting HelloWorker #{Time.now}\n"
|
11
|
-
log "Hey. I'm a worker job, showing how this cloud-based worker thing works."
|
12
|
-
log "I'll sleep for a little bit so you can see the workers running!"
|
13
|
-
log "some_param --> #{some_param}\n"
|
14
|
-
sleep 10
|
15
|
-
log "Done running HelloWorker #{Time.now}"
|
16
|
-
end
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
|
@@ -1,65 +0,0 @@
|
|
1
|
-
# bump......
|
2
|
-
class HackerWorker < IronWorker::Base
|
3
|
-
|
4
|
-
#merge_gem 'stathat'
|
5
|
-
|
6
|
-
attr_accessor :x
|
7
|
-
|
8
|
-
def run
|
9
|
-
puts "hello world! #{x}"
|
10
|
-
#puts StatHat::API.class.name
|
11
|
-
puts "\n"
|
12
|
-
|
13
|
-
puts 'user_dir: ' + user_dir.to_s
|
14
|
-
puts "\n"
|
15
|
-
command 'pwd'
|
16
|
-
|
17
|
-
filepath = "#{user_dir}myfile.txt"
|
18
|
-
puts "Writing file to #{filepath}..."
|
19
|
-
File.open(filepath, 'w') do |fo|
|
20
|
-
fo.write "THIS IS MY FILE"
|
21
|
-
end
|
22
|
-
|
23
|
-
command 'node --version'
|
24
|
-
command 'go version', :includes=>'go version go1'
|
25
|
-
command 'java -version', :includes=>'icedtea'
|
26
|
-
command 'mono -V', :includes=>'Mono JIT compliler version'
|
27
|
-
command 'gmcs hello.cs'
|
28
|
-
|
29
|
-
|
30
|
-
command 'ls -al'
|
31
|
-
command 'cat myfile.txt'
|
32
|
-
command 'echo "hello" >> greetings.txt'
|
33
|
-
command 'cat myfile.txt'
|
34
|
-
command 'ls -al /usr/bin'
|
35
|
-
command 'ls -al /mnt'
|
36
|
-
command 'ps -ef'
|
37
|
-
command 'cat /etc/passwd'
|
38
|
-
command 'env'
|
39
|
-
puts 'RUBY ENV:'
|
40
|
-
puts ENV.inspect
|
41
|
-
puts "\n"
|
42
|
-
command 'gem environment'
|
43
|
-
command 'gem list', :includes=>'typhoeus'
|
44
|
-
begin
|
45
|
-
command 'sudo ps -ef'
|
46
|
-
raise "Should not make it here!"
|
47
|
-
rescue => ex
|
48
|
-
puts "Expected error running sudo: #{ex.class.name}: #{ex.message}"
|
49
|
-
end
|
50
|
-
command 'su root'
|
51
|
-
command 'ls -al /home/ubuntu'
|
52
|
-
command 'ls -al /root'
|
53
|
-
|
54
|
-
end
|
55
|
-
|
56
|
-
def command(s, params={})
|
57
|
-
puts "Running #{s}:"
|
58
|
-
res = `#{s}`
|
59
|
-
if params[:includes]
|
60
|
-
raise "Did not include #{params[:includes]}" unless res.include?(params[:includes])
|
61
|
-
end
|
62
|
-
puts res
|
63
|
-
puts "\n"
|
64
|
-
end
|
65
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# Bump...............
|
2
|
-
class TestWorker < IronWorker::Base
|
3
|
-
|
4
|
-
attr_accessor :s3_key, :times
|
5
|
-
|
6
|
-
def initialize
|
7
|
-
@times = 1
|
8
|
-
end
|
9
|
-
|
10
|
-
def run
|
11
|
-
log 'running the test worker for moi '.upcase
|
12
|
-
log 's3_key instance_variable = ' + self.s3_key.to_s
|
13
|
-
|
14
|
-
@times.times do |i|
|
15
|
-
puts 'running at ' + i.to_s
|
16
|
-
sleep 1
|
17
|
-
set_progress(:percent => (1.0 * i / @times * 100).round, :msg => "getting there...")
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
end
|
22
|
-
|
@@ -1,53 +0,0 @@
|
|
1
|
-
# Bump..................
|
2
|
-
require_relative "one_line_worker"
|
3
|
-
class TestWorker2 < IronWorker::Base
|
4
|
-
|
5
|
-
merge File.join(File.dirname(__FILE__), '../' 'models', 'model_1.rb')
|
6
|
-
unmerge '../models/model_2.rb'
|
7
|
-
merge_worker File.join(File.dirname(__FILE__), 'second_worker.rb'), ' SecondWorker'
|
8
|
-
merge_worker File.join(File.dirname(__FILE__), 'one_line_worker.rb'), OneLineWorker
|
9
|
-
#merge_worker 'second_worker.rb', 'SecondWorker'
|
10
|
-
|
11
|
-
attr_accessor :s3_key, :times, :x
|
12
|
-
|
13
|
-
def super_class_method
|
14
|
-
puts 'This is a super_class_method'
|
15
|
-
end
|
16
|
-
|
17
|
-
|
18
|
-
def who_am_i2?
|
19
|
-
return self.class.name
|
20
|
-
end
|
21
|
-
|
22
|
-
def run
|
23
|
-
log 'running the runner for leroy '.upcase + ' with data: '
|
24
|
-
|
25
|
-
log 's3_key instance_variable = ' + self.s3_key
|
26
|
-
times.times do |i|
|
27
|
-
log 'running at ' + i.to_s
|
28
|
-
sleep 0.3
|
29
|
-
#set_progress(:percent=> (i / times * 100))
|
30
|
-
end
|
31
|
-
m1 = Model1.new
|
32
|
-
log "I made a new model1"
|
33
|
-
m1.say_hello
|
34
|
-
|
35
|
-
second_workers = []
|
36
|
-
now = Time.now
|
37
|
-
#10.times do |i|
|
38
|
-
# second_worker = SecondWorker.new
|
39
|
-
# second_worker.start_time = now
|
40
|
-
# second_worker.num = i
|
41
|
-
# second_worker.queue
|
42
|
-
# second_workers << second_worker
|
43
|
-
#end
|
44
|
-
#
|
45
|
-
#10.times do |i|
|
46
|
-
# second_workers.each do |sw|
|
47
|
-
# puts sw.to_s
|
48
|
-
# puts sw.status["status"].to_s
|
49
|
-
# end
|
50
|
-
#end
|
51
|
-
end
|
52
|
-
|
53
|
-
end
|
@@ -1,40 +0,0 @@
|
|
1
|
-
# bump.......................
|
2
|
-
|
3
|
-
class MergingWorker < IronWorker::Base
|
4
|
-
|
5
|
-
merge_gem 'mini_fb'
|
6
|
-
#merge_gem 'carrierwave', :require=>['carrierwave', 'carrierwave/orm/activerecord']
|
7
|
-
merge_folder '../models'
|
8
|
-
|
9
|
-
merge 'models/cool_model'
|
10
|
-
unmerge 'models/model_2.rb'
|
11
|
-
merge_worker 'second_worker.rb', 'SecondWorker'
|
12
|
-
|
13
|
-
attr_accessor :s3_key, :times, :x
|
14
|
-
|
15
|
-
def run
|
16
|
-
raise "Model2 was found!" if defined?(Model2)
|
17
|
-
m1 = Model1.new
|
18
|
-
log "I made a new model1"
|
19
|
-
m1.say_hello
|
20
|
-
|
21
|
-
second_workers = []
|
22
|
-
now = Time.now
|
23
|
-
10.times do |i|
|
24
|
-
second_worker = SecondWorker.new
|
25
|
-
second_worker.start_time = now
|
26
|
-
second_worker.num = i
|
27
|
-
second_worker.queue
|
28
|
-
second_workers << second_worker
|
29
|
-
end
|
30
|
-
|
31
|
-
second_workers.each do |sw|
|
32
|
-
puts sw.to_s
|
33
|
-
puts sw.status["status"].to_s
|
34
|
-
p sw.wait_until_complete.inspect
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
38
|
-
|
39
|
-
|
40
|
-
end
|
data/test/workers/mq_worker.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
# bump......
|
2
|
-
class MqWorker < IronWorker::Base
|
3
|
-
|
4
|
-
merge_gem 'iron_mq'
|
5
|
-
|
6
|
-
attr_accessor :config
|
7
|
-
|
8
|
-
def run
|
9
|
-
rest = Rest::Client.new
|
10
|
-
resp = rest.get 'http://169.254.169.254/2009-04-04/meta-data/instance-id'
|
11
|
-
puts 'instance_id=' + resp.body
|
12
|
-
@mq = IronMQ::Client.new(:token=>config['token'], :project_id=>config['project_id'], :queue_name=>'mq_worker')
|
13
|
-
puts 'putting message on queue'
|
14
|
-
resp = @mq.messages.post("Hello world!")
|
15
|
-
puts "posted #{resp.id}"
|
16
|
-
puts 'getting message from queue'
|
17
|
-
resp = @mq.messages.get
|
18
|
-
puts 'got: ' + resp.body
|
19
|
-
|
20
|
-
end
|
21
|
-
end
|
@@ -1,32 +0,0 @@
|
|
1
|
-
# bump.............
|
2
|
-
|
3
|
-
class PrawnWorker < IronWorker::Base
|
4
|
-
|
5
|
-
merge '../resources/something.yml'
|
6
|
-
merge_gem 'prawn', :include_dirs=>['data']
|
7
|
-
merge_gem "pdf-reader"
|
8
|
-
|
9
|
-
attr_accessor :x
|
10
|
-
|
11
|
-
def run()
|
12
|
-
puts 'TestWorker4.run'
|
13
|
-
|
14
|
-
#something = YAML.load('resources/something.yml')
|
15
|
-
#p something
|
16
|
-
|
17
|
-
Prawn::Document.generate("hello.pdf") do
|
18
|
-
text "Hello World!"
|
19
|
-
end
|
20
|
-
|
21
|
-
# now list files to see that it was created
|
22
|
-
puts "files in user_dir"
|
23
|
-
Dir.glob("*").each do |f|
|
24
|
-
puts f
|
25
|
-
end
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# Bump...............
|
2
|
-
class ProgressWorker < IronWorker::Base
|
3
|
-
|
4
|
-
attr_accessor :s3_key, :times, :x
|
5
|
-
|
6
|
-
def initialize
|
7
|
-
@times = 10
|
8
|
-
end
|
9
|
-
|
10
|
-
def run
|
11
|
-
puts 'hello'
|
12
|
-
puts 'running the test worker for moi '.upcase
|
13
|
-
puts 's3_key instance_variable = ' + self.s3_key.to_s
|
14
|
-
|
15
|
-
@times.times do |i|
|
16
|
-
puts 'loop ' + i.to_s
|
17
|
-
sleep 1
|
18
|
-
progress = (1.0 * i / @times * 100).round
|
19
|
-
puts 'Setting progress to ' + progress.to_s
|
20
|
-
set_progress(:percent=> progress, :msg=>"getting there...")
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
|
25
|
-
end
|
26
|
-
|
data/test/workers/qb_worker.rb
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
class QbWorker < IronWorker::Base
|
2
|
-
|
3
|
-
merge_worker 'running_back_worker', 'RunningBackWorker'
|
4
|
-
|
5
|
-
attr_accessor :x
|
6
|
-
|
7
|
-
def run
|
8
|
-
#IronWorker.logger.level = Logger::DEBUG
|
9
|
-
puts "Qb passing off to running backs..."
|
10
|
-
x ||= 10
|
11
|
-
x.times do |i|
|
12
|
-
worker = RunningBackWorker.new
|
13
|
-
worker.i = i
|
14
|
-
worker.queue(:priority=>0)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# bump......
|
2
|
-
class RailsWorker < IronWorker::Base
|
3
|
-
|
4
|
-
merge_worker 'rails_worker2', 'RailsWorker2'
|
5
|
-
|
6
|
-
def run
|
7
|
-
puts "hello rails! env=#{Rails.env}"
|
8
|
-
worker2 = nil
|
9
|
-
10.times do |i|
|
10
|
-
worker2 = RailsWorker2.new
|
11
|
-
worker2.x = "yz #{i}"
|
12
|
-
worker2.queue(:priority=>2)
|
13
|
-
end
|
14
|
-
|
15
|
-
worker2.wait_until_complete
|
16
|
-
sleep 2
|
17
|
-
log = worker2.get_log
|
18
|
-
puts "START WORKER2 LOG:"
|
19
|
-
puts log
|
20
|
-
puts "END WORKER2 LOG"
|
21
|
-
|
22
|
-
|
23
|
-
end
|
24
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
begin
|
2
|
-
require File.join(File.dirname(__FILE__), '../lib/iron_worker')
|
3
|
-
rescue Exception
|
4
|
-
require 'iron_worker'
|
5
|
-
end
|
6
|
-
|
7
|
-
|
8
|
-
class ScheduledWorker < IronWorker::Base
|
9
|
-
|
10
|
-
def run
|
11
|
-
log "This is scheduled yes it is"
|
12
|
-
log data.inspect
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
# bump..
|
2
|
-
class SecondWorker < IronWorker::Base
|
3
|
-
attr_accessor :start_time, :num
|
4
|
-
|
5
|
-
merge_worker 'third_worker.rb', 'ThirdWorker'
|
6
|
-
|
7
|
-
# change
|
8
|
-
|
9
|
-
def run
|
10
|
-
log self.to_s
|
11
|
-
end
|
12
|
-
|
13
|
-
def to_s
|
14
|
-
"I am Second Worker #{num}. I was started at #{start_time}"
|
15
|
-
end
|
16
|
-
end
|