iron_worker_ng 0.2.4 → 0.2.5

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -45,7 +45,7 @@ Because your worker will be executed in the cloud, you'll need to bundle all the
45
45
  ```ruby
46
46
  code = IronWorkerNG::Code::Ruby.new
47
47
 
48
- code.merge_worker 'my_worker.rb'
48
+ code.merge_exec 'my_worker.rb'
49
49
  code.merge_file '../lib/utils.rb'
50
50
  code.merge_dir '../config'
51
51
  code.merge_gem 'activerecord'
@@ -60,10 +60,10 @@ The IronWorkerNG::Code::Ruby class will help you package your code for upload, b
60
60
  Create new code package with the specified args.
61
61
 
62
62
  ```ruby
63
- code_with_name = IronWorkerNG::Code::Ruby.new(:worker => 'cool_worker.rb', :name => 'CoolWorker')
64
- code_with_guessed_name = IronWorkerNG::Code::Ruby.new(:worker => 'cool_worker.rb')
63
+ code_with_name = IronWorkerNG::Code::Ruby.new(:exec => 'cool_worker.rb', :name => 'CoolWorker')
64
+ code_with_guessed_name = IronWorkerNG::Code::Ruby.new(:exec => 'cool_worker.rb')
65
65
  code_with_short_form_syntax = IronWorkeNG::Code::Ruby.new('cool_worker.rb')
66
- code = IronWorkerNG::Code::Ruby.new # will need to use code.merge_worker later
66
+ code = IronWorkerNG::Code::Ruby.new # will need to use code.merge_exec later
67
67
  ```
68
68
 
69
69
  ### name()
@@ -108,12 +108,12 @@ code.merge_dir '../config' # will be in the same directory as worker
108
108
  code.merge_dir 'lib', 'utils' # will be in utils subdirectory, accessible as utils/lib
109
109
  ```
110
110
 
111
- ### merge_worker(path, name = nil)
111
+ ### merge_exec(path, name = nil)
112
112
 
113
113
  Merge the worker located at `path`. If `name` is omitted, a camel-cased version of the file name will be used. **You can have only one worker merged per code package.**
114
114
 
115
115
  ```ruby
116
- code.merge_worker 'my_worker.rb' # name will be MyWorker
116
+ code.merge_exec 'my_worker.rb' # name will be MyWorker
117
117
  ```
118
118
 
119
119
  ### merge_gem(name, version = '>= 0')
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.4
1
+ 0.2.5
@@ -11,7 +11,7 @@ client = IronWorkerNG::Client.new(:token => token,
11
11
 
12
12
  # create ruby code bundle
13
13
  code = IronWorkerNG::Code::Ruby.new
14
- code.merge_worker(File.dirname(__FILE__) + '/hello_worker.rb')
14
+ code.merge_exec(File.dirname(__FILE__) + '/hello_worker.rb')
15
15
 
16
16
  # upload it to iron.io
17
17
  client.codes.create(code)
@@ -11,12 +11,12 @@ client = IronWorkerNG::Client.new(:token => token,
11
11
 
12
12
  # create master code bundle
13
13
  master = IronWorkerNG::Code::Ruby.new
14
- master.merge_worker(File.dirname(__FILE__) + '/master_worker.rb')
14
+ master.merge_exec(File.dirname(__FILE__) + '/master_worker.rb')
15
15
  master.merge_gem('iron_worker_ng') # we need it to queue slave workers
16
16
 
17
17
  # create slave code bundle
18
18
  slave = IronWorkerNG::Code::Ruby.new
19
- slave.merge_worker(File.dirname(__FILE__) + '/slave_worker.rb')
19
+ slave.merge_exec(File.dirname(__FILE__) + '/slave_worker.rb')
20
20
 
21
21
  # upload both
22
22
  client.codes.create(master)
@@ -20,16 +20,16 @@ client = IronWorkerNG::Client.new(:token => token,
20
20
 
21
21
  # if not specified, name default to worker name converted from underscore to camel style
22
22
  code = IronWorkerNG::Code::Ruby.new
23
- code.merge_worker('/sample_worker.rb')
23
+ code.merge_exec('/sample_worker.rb')
24
24
  #> code.name == 'SampleWorker'
25
25
 
26
26
  # still can pass name in constructor
27
27
  code = IronWorkerNG::Code::Ruby.new('transmogrify')
28
28
  #> code.name == 'transmogrify'
29
- code.merge_worker(File.dirname(__FILE__) + '/sample_worker.rb')
29
+ code.merge_exec(File.dirname(__FILE__) + '/sample_worker.rb')
30
30
 
31
31
  # once worker merged, following attempts will be ignored
32
- code.merge_worker('anything')
32
+ code.merge_exec('anything')
33
33
  #> code.worker.path.end_with? '/worker.rb'
34
34
 
35
35
  # if worker requires some gems, we
@@ -39,14 +39,14 @@ module IronWorkerNG
39
39
  @features = []
40
40
 
41
41
  if args.length == 1 && args[0].class == String && File.exists?(args[0])
42
- merge_worker(args[0])
42
+ merge_exec(args[0])
43
43
  elsif args.length == 1 && args.class == String
44
44
  @name = args[0]
45
45
  elsif args.length == 1 && args.class == Hash
46
- @name = args[0][:name] || args[0]]['name']
46
+ @name = args[0][:name] || args[0]['name']
47
47
 
48
- worker = args[0][:worker] || args[0]['worker']
49
- merge_worker(worker) unless worker.nil?
48
+ exec = args[0][:exec] || args[0]['exec'] || args[0][:worker] || args[0]['worker']
49
+ merge_exec(exec) unless exec.nil?
50
50
  end
51
51
  end
52
52
 
@@ -71,9 +71,9 @@ module IronWorkerNG
71
71
  end
72
72
 
73
73
  def create_zip
74
- unless @worker
75
- IronWorkerNG::Logger.error 'No worker specified'
76
- raise 'No worker specified'
74
+ unless @exec
75
+ IronWorkerNG::Logger.error 'No exec specified'
76
+ raise 'No exec specified'
77
77
  end
78
78
 
79
79
  fixate
@@ -1,9 +1,9 @@
1
- require_relative '../feature/binary/merge_worker'
1
+ require_relative '../feature/binary/merge_exec'
2
2
 
3
3
  module IronWorkerNG
4
4
  module Code
5
5
  class Binary < IronWorkerNG::Code::Base
6
- include IronWorkerNG::Feature::Binary::MergeWorker::InstanceMethods
6
+ include IronWorkerNG::Feature::Binary::MergeExec::InstanceMethods
7
7
 
8
8
  def create_runner(zip)
9
9
  zip.get_output_stream(runner) do |runner|
@@ -22,9 +22,9 @@ root() {
22
22
 
23
23
  cd "$(root "$@")"
24
24
 
25
- chmod +x #{File.basename(worker.path)}
25
+ chmod +x #{File.basename(@exec.path)}
26
26
 
27
- LD_LIBRARY_PATH=. ./#{File.basename(worker.path)} "$@"
27
+ LD_LIBRARY_PATH=. ./#{File.basename(@exec.path)} "$@"
28
28
  RUNNER
29
29
  end
30
30
  end
@@ -1,11 +1,11 @@
1
1
  require_relative '../feature/java/merge_jar'
2
- require_relative '../feature/java/merge_worker'
2
+ require_relative '../feature/java/merge_exec'
3
3
 
4
4
  module IronWorkerNG
5
5
  module Code
6
6
  class Java < IronWorkerNG::Code::Base
7
7
  include IronWorkerNG::Feature::Java::MergeJar::InstanceMethods
8
- include IronWorkerNG::Feature::Java::MergeWorker::InstanceMethods
8
+ include IronWorkerNG::Feature::Java::MergeExec::InstanceMethods
9
9
 
10
10
  def create_runner(zip)
11
11
  classpath_array = []
@@ -36,7 +36,7 @@ root() {
36
36
 
37
37
  cd "$(root "$@")"
38
38
 
39
- java -cp #{classpath} #{worker.klass.nil? ? "-jar #{File.basename(worker.path)}" : worker.klass} "$@"
39
+ java -cp #{classpath} #{@exec.klass.nil? ? "-jar #{File.basename(@exec.path)}" : @exec.klass} "$@"
40
40
  RUNNER
41
41
  end
42
42
  end
@@ -1,9 +1,9 @@
1
- require_relative '../feature/node/merge_worker'
1
+ require_relative '../feature/node/merge_exec'
2
2
 
3
3
  module IronWorkerNG
4
4
  module Code
5
5
  class Node < IronWorkerNG::Code::Base
6
- include IronWorkerNG::Feature::Node::MergeWorker::InstanceMethods
6
+ include IronWorkerNG::Feature::Node::MergeExec::InstanceMethods
7
7
 
8
8
  def create_runner(zip)
9
9
  zip.get_output_stream(runner) do |runner|
@@ -22,7 +22,7 @@ root() {
22
22
 
23
23
  cd "$(root "$@")"
24
24
 
25
- node #{File.basename(worker.path)} "$@"
25
+ node #{File.basename(@exec.path)} "$@"
26
26
  RUNNER
27
27
  end
28
28
  end
@@ -1,13 +1,13 @@
1
1
  require_relative '../feature/ruby/merge_gem'
2
2
  require_relative '../feature/ruby/merge_gemfile'
3
- require_relative '../feature/ruby/merge_worker'
3
+ require_relative '../feature/ruby/merge_exec'
4
4
 
5
5
  module IronWorkerNG
6
6
  module Code
7
7
  class Ruby < IronWorkerNG::Code::Base
8
8
  include IronWorkerNG::Feature::Ruby::MergeGem::InstanceMethods
9
9
  include IronWorkerNG::Feature::Ruby::MergeGemfile::InstanceMethods
10
- include IronWorkerNG::Feature::Ruby::MergeWorker::InstanceMethods
10
+ include IronWorkerNG::Feature::Ruby::MergeExec::InstanceMethods
11
11
 
12
12
  def create_runner(zip)
13
13
  gempath_code_array = []
@@ -80,27 +80,27 @@ def params
80
80
  @params
81
81
  end
82
82
 
83
- require '#{File.basename(worker.path)}'
83
+ require '#{File.basename(@exec.path)}'
84
84
 
85
- worker_class = nil
85
+ exec_class = nil
86
86
 
87
87
  begin
88
- worker_class = Kernel.const_get('#{worker.klass}')
88
+ exec_class = Kernel.const_get('#{@exec.klass}')
89
89
  rescue
90
90
  end
91
91
 
92
- unless worker_class.nil?
93
- worker_inst = worker_class.new
92
+ unless exec_class.nil?
93
+ exec_inst = exec_class.new
94
94
 
95
95
  params.keys.each do |param|
96
96
  if param.class == String
97
- if worker_inst.respond_to?(param + '=')
98
- worker_inst.send(param + '=', params[param])
97
+ if exec_inst.respond_to?(param + '=')
98
+ exec_inst.send(param + '=', params[param])
99
99
  end
100
100
  end
101
101
  end
102
102
 
103
- worker_inst.run
103
+ exec_inst.run
104
104
  end
105
105
  RUNNER
106
106
  end
@@ -1,7 +1,7 @@
1
1
  module IronWorkerNG
2
2
  module Feature
3
3
  module Binary
4
- module MergeWorker
4
+ module MergeExec
5
5
  class Feature < IronWorkerNG::Feature::Base
6
6
  attr_reader :path
7
7
 
@@ -14,34 +14,36 @@ module IronWorkerNG
14
14
  end
15
15
 
16
16
  def bundle(zip)
17
- IronWorkerNG::Logger.debug "Bundling binary worker with path='#{@path}'"
17
+ IronWorkerNG::Logger.debug "Bundling binary exec with path='#{@path}'"
18
18
 
19
19
  zip.add(File.basename(@path), @path)
20
20
  end
21
21
  end
22
22
 
23
23
  module InstanceMethods
24
- attr_reader :worker
24
+ attr_reader :exec
25
25
 
26
- def merge_worker(path)
27
- @worker ||= nil
26
+ def merge_exec(path)
27
+ @exec ||= nil
28
28
 
29
- unless @worker.nil?
30
- IronWorkerNG::Logger.warn "Ignoring attempt to merge binary worker with path='#{path}'"
29
+ unless @exec.nil?
30
+ IronWorkerNG::Logger.warn "Ignoring attempt to merge binary exec with path='#{path}'"
31
31
  return
32
32
  end
33
33
 
34
34
  @name ||= File.basename(path).gsub(/\..*$/, '').capitalize.gsub(/_./) { |x| x[1].upcase }
35
35
 
36
- @worker = IronWorkerNG::Feature::Binary::MergeWorker::Feature.new(path)
36
+ @exec = IronWorkerNG::Feature::Binary::MergeExec::Feature.new(path)
37
37
 
38
- IronWorkerNG::Logger.info "Merging binary worker with path='#{path}'"
38
+ IronWorkerNG::Logger.info "Merging binary exec with path='#{path}'"
39
39
 
40
- @features << @worker
40
+ @features << @exec
41
41
  end
42
42
 
43
+ alias :merge_worker :merge_exec
44
+
43
45
  def self.included(base)
44
- IronWorkerNG::Code::Base.register_feature(:name => 'merge_worker', :for_klass => base, :args => 'PATH')
46
+ IronWorkerNG::Code::Base.register_feature(:name => 'merge_exec', :for_klass => base, :args => 'PATH')
45
47
  end
46
48
  end
47
49
  end
@@ -1,7 +1,7 @@
1
1
  module IronWorkerNG
2
2
  module Feature
3
3
  module Java
4
- module MergeWorker
4
+ module MergeExec
5
5
  class Feature < IronWorkerNG::Feature::Base
6
6
  attr_reader :path
7
7
  attr_reader :klass
@@ -16,7 +16,7 @@ module IronWorkerNG
16
16
  end
17
17
 
18
18
  def bundle(zip)
19
- IronWorkerNG::Logger.debug "Bundling java worker with path='#{@path}' and class='#{@klass}'"
19
+ IronWorkerNG::Logger.debug "Bundling java exec with path='#{@path}' and class='#{@klass}'"
20
20
 
21
21
  zip.add(File.basename(@path), @path)
22
22
  end
@@ -27,13 +27,13 @@ module IronWorkerNG
27
27
  end
28
28
 
29
29
  module InstanceMethods
30
- attr_reader :worker
30
+ attr_reader :exec
31
31
 
32
- def merge_worker(path, klass = nil)
33
- @worker ||= nil
32
+ def merge_exec(path, klass = nil)
33
+ @exec ||= nil
34
34
 
35
- unless @worker.nil?
36
- IronWorkerNG::Logger.warn "Ignoring attempt to merge java worker with path='#{path}' and class='#{klass}'"
35
+ unless @exec.nil?
36
+ IronWorkerNG::Logger.warn "Ignoring attempt to merge java exec with path='#{path}' and class='#{klass}'"
37
37
  return
38
38
  end
39
39
 
@@ -43,15 +43,17 @@ module IronWorkerNG
43
43
  @name ||= klass.split('.')[-1]
44
44
  end
45
45
 
46
- @worker = IronWorkerNG::Feature::Java::MergeWorker::Feature.new(path, klass)
46
+ @exec = IronWorkerNG::Feature::Java::MergeExec::Feature.new(path, klass)
47
47
 
48
- IronWorkerNG::Logger.info "Merging java worker with path='#{path}' and class='#{klass}'"
48
+ IronWorkerNG::Logger.info "Merging java exec with path='#{path}' and class='#{klass}'"
49
49
 
50
- @features << @worker
50
+ @features << @exec
51
51
  end
52
52
 
53
+ alias :merge_worker :merge_exec
54
+
53
55
  def self.included(base)
54
- IronWorkerNG::Code::Base.register_feature(:name => 'merge_worker', :for_klass => base, :args => 'PATH,CLASS')
56
+ IronWorkerNG::Code::Base.register_feature(:name => 'merge_exec', :for_klass => base, :args => 'PATH,CLASS')
55
57
  end
56
58
  end
57
59
  end
@@ -1,7 +1,7 @@
1
1
  module IronWorkerNG
2
2
  module Feature
3
3
  module Node
4
- module MergeWorker
4
+ module MergeExec
5
5
  class Feature < IronWorkerNG::Feature::Base
6
6
  attr_reader :path
7
7
 
@@ -14,34 +14,36 @@ module IronWorkerNG
14
14
  end
15
15
 
16
16
  def bundle(zip)
17
- IronWorkerNG::Logger.debug "Bundling node worker with path='#{@path}'"
17
+ IronWorkerNG::Logger.debug "Bundling node exec with path='#{@path}'"
18
18
 
19
19
  zip.add(File.basename(@path), @path)
20
20
  end
21
21
  end
22
22
 
23
23
  module InstanceMethods
24
- attr_reader :worker
24
+ attr_reader :exec
25
25
 
26
- def merge_worker(path)
27
- @worker ||= nil
26
+ def merge_exec(path)
27
+ @exec ||= nil
28
28
 
29
- unless @worker.nil?
30
- IronWorkerNG::Logger.warn "Ignoring attempt to merge node worker with path='#{path}'"
29
+ unless @exec.nil?
30
+ IronWorkerNG::Logger.warn "Ignoring attempt to merge node exec with path='#{path}'"
31
31
  return
32
32
  end
33
33
 
34
34
  @name ||= File.basename(path).gsub(/\.js$/, '').capitalize.gsub(/_./) { |x| x[1].upcase }
35
35
 
36
- @worker = IronWorkerNG::Feature::Node::MergeWorker::Feature.new(path)
36
+ @exec = IronWorkerNG::Feature::Node::MergeExec::Feature.new(path)
37
37
 
38
- IronWorkerNG::Logger.info "Merging node worker with path='#{path}'"
38
+ IronWorkerNG::Logger.info "Merging node exec with path='#{path}'"
39
39
 
40
- @features << @worker
40
+ @features << @exec
41
41
  end
42
42
 
43
+ alias :merge_worker :merge_exec
44
+
43
45
  def self.included(base)
44
- IronWorkerNG::Code::Base.register_feature(:name => 'merge_worker', :for_klass => base, :args => 'PATH')
46
+ IronWorkerNG::Code::Base.register_feature(:name => 'merge_exec', :for_klass => base, :args => 'PATH')
45
47
  end
46
48
  end
47
49
  end
@@ -1,7 +1,7 @@
1
1
  module IronWorkerNG
2
2
  module Feature
3
3
  module Ruby
4
- module MergeWorker
4
+ module MergeExec
5
5
  class Feature < IronWorkerNG::Feature::Base
6
6
  attr_reader :path
7
7
  attr_reader :klass
@@ -16,38 +16,38 @@ module IronWorkerNG
16
16
  end
17
17
 
18
18
  def bundle(zip)
19
- IronWorkerNG::Logger.debug "Bundling ruby worker with path='#{path}' and class='#{klass}'"
19
+ IronWorkerNG::Logger.debug "Bundling ruby exec with path='#{path}' and class='#{klass}'"
20
20
 
21
21
  zip.add(File.basename(@path), @path)
22
22
  end
23
23
  end
24
24
 
25
25
  module InstanceMethods
26
- attr_reader :worker
26
+ attr_reader :exec
27
27
 
28
- def merge_worker(path, klass = nil)
29
- @worker ||= nil
28
+ def merge_exec(path, klass = nil)
29
+ @exec ||= nil
30
30
 
31
31
  if klass == nil
32
32
  klass = File.basename(path).gsub(/\.rb$/, '').capitalize.gsub(/_./) { |x| x[1].upcase }
33
33
  end
34
34
 
35
- unless @worker.nil?
36
- IronWorkerNG::Logger.warn "Ignoring attempt to merge ruby worker with path='#{path}' and class='#{klass}'"
35
+ unless @exec.nil?
36
+ IronWorkerNG::Logger.warn "Ignoring attempt to merge ruby exec with path='#{path}' and class='#{klass}'"
37
37
  return
38
38
  end
39
39
 
40
40
  @name ||= klass
41
41
 
42
- @worker = IronWorkerNG::Feature::Ruby::MergeWorker::Feature.new(path, klass)
42
+ @exec = IronWorkerNG::Feature::Ruby::MergeExec::Feature.new(path, klass)
43
43
 
44
- IronWorkerNG::Logger.info "Merging ruby worker with path='#{path}' and class='#{klass}'"
44
+ IronWorkerNG::Logger.info "Merging ruby exec with path='#{path}' and class='#{klass}'"
45
45
 
46
- @features << @worker
46
+ @features << @exec
47
47
  end
48
48
 
49
49
  def self.included(base)
50
- IronWorkerNG::Code::Base.register_feature(:name => 'merge_worker', :for_klass => base, :args => 'PATH[,CLASS]')
50
+ IronWorkerNG::Code::Base.register_feature(:name => 'merge_exec', :for_klass => base, :args => 'PATH[,CLASS]')
51
51
  end
52
52
  end
53
53
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iron_worker_ng
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -139,15 +139,15 @@ files:
139
139
  - lib/iron_worker_ng/code/node.rb
140
140
  - lib/iron_worker_ng/code/ruby.rb
141
141
  - lib/iron_worker_ng/feature/base.rb
142
- - lib/iron_worker_ng/feature/binary/merge_worker.rb
142
+ - lib/iron_worker_ng/feature/binary/merge_exec.rb
143
143
  - lib/iron_worker_ng/feature/common/merge_dir.rb
144
144
  - lib/iron_worker_ng/feature/common/merge_file.rb
145
+ - lib/iron_worker_ng/feature/java/merge_exec.rb
145
146
  - lib/iron_worker_ng/feature/java/merge_jar.rb
146
- - lib/iron_worker_ng/feature/java/merge_worker.rb
147
- - lib/iron_worker_ng/feature/node/merge_worker.rb
147
+ - lib/iron_worker_ng/feature/node/merge_exec.rb
148
+ - lib/iron_worker_ng/feature/ruby/merge_exec.rb
148
149
  - lib/iron_worker_ng/feature/ruby/merge_gem.rb
149
150
  - lib/iron_worker_ng/feature/ruby/merge_gemfile.rb
150
- - lib/iron_worker_ng/feature/ruby/merge_worker.rb
151
151
  - lib/iron_worker_ng/logger.rb
152
152
  - lib/iron_worker_ng/version.rb
153
153
  - test/Gemfile
@@ -172,7 +172,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
172
  version: '0'
173
173
  segments:
174
174
  - 0
175
- hash: -253039331
175
+ hash: 1033714541
176
176
  required_rubygems_version: !ruby/object:Gem::Requirement
177
177
  none: false
178
178
  requirements: