iron_worker_ng 1.5.2 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +11 -4
- data/bin/iron_worker +5 -3
- data/lib/iron_worker_ng/cli.rb +1 -0
- data/lib/iron_worker_ng/code/base.rb +7 -1
- data/lib/iron_worker_ng/code/container/zip.rb +3 -3
- data/lib/iron_worker_ng/feature/common/merge_zip.rb +1 -1
- data/lib/iron_worker_ng/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec003beb156fbb334b0a0d1447742f434457e000
|
4
|
+
data.tar.gz: dd390f78a508f82c0a6b5c909ea2015063ff1af0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5e89a774dc83290bc649b438b33d208bf5073d94fe8cab027a43bfff3858b10a3a23e0dcf584939e3d06625f7da59f60f4be9e4fcce0f1e7d4981597a6a808e9
|
7
|
+
data.tar.gz: fbbfde46222f1178b00cc6338592bb7dd4c07f6c87c8f630e11082c72180f2d492d007db24207f6f0c1728bc2e26fcbf2a179abd5015765c09caac0ddb09d94b
|
data/README.md
CHANGED
@@ -43,7 +43,8 @@ supplementary data, and other dependencies with it. `.worker` files make it easy
|
|
43
43
|
|
44
44
|
```ruby
|
45
45
|
# define the runtime language, this can be ruby, java, node, php, go, etc.
|
46
|
-
|
46
|
+
# also you could set version of language(check of available versions via iron_worker stacks)
|
47
|
+
runtime "ruby","2.1"
|
47
48
|
# exec is the file that will be executed:
|
48
49
|
exec "hello_worker.rb"
|
49
50
|
```
|
@@ -90,7 +91,7 @@ You can specify priority of the task using `--priority` parameter:
|
|
90
91
|
|
91
92
|
```ruby
|
92
93
|
iron_worker queue hello --priority 0 # default value, lowest priority
|
93
|
-
iron_worker queue hello --priority 1 # medium priority
|
94
|
+
iron_worker queue hello --priority 1 --label 'medium priority task' # medium priority
|
94
95
|
```
|
95
96
|
|
96
97
|
Value of priority parameter means the priority queue to run the task in. Valid values are 0, 1, and 2. 0 is the default.
|
@@ -108,6 +109,7 @@ You can specify not only priority:
|
|
108
109
|
- **priority**: Setting the priority of your job. Valid values are 0, 1, and 2. The default is 0.
|
109
110
|
- **timeout**: The maximum runtime of your task in seconds. No task can exceed 3600 seconds (60 minutes). The default is 3600 but can be set to a shorter duration.
|
110
111
|
- **delay**: The number of seconds to delay before actually queuing the task. Default is 0.
|
112
|
+
- **label**: Optional text label for your task.
|
111
113
|
|
112
114
|
## Get task status
|
113
115
|
|
@@ -437,7 +439,12 @@ iron_worker stacks
|
|
437
439
|
And to specify stack add following line in your .worker file
|
438
440
|
|
439
441
|
```ruby
|
440
|
-
|
442
|
+
runtime 'ruby', '2.1'
|
443
|
+
```
|
444
|
+
Or
|
445
|
+
|
446
|
+
```ruby
|
447
|
+
exec 'java.sh'
|
441
448
|
runtime 'binary'
|
442
449
|
stack 'java-1.7'
|
443
450
|
exec 'java.sh'
|
@@ -603,7 +610,7 @@ puts client.schedules.get('1234567890').last_run_time
|
|
603
610
|
Create a new scheduled task for the code package specified by `code_name`, passing the params hash to it as a data payload and returning a scheduled task object with only the `id` field filled. Visit http://dev.iron.io/worker/reference/api/#schedule_a_task for more information about the available options.
|
604
611
|
|
605
612
|
```ruby
|
606
|
-
schedule = client.schedules.create('MyWorker', {:client => 'Joe'}, {:start_at => Time.now + 3600})
|
613
|
+
schedule = client.schedules.create('MyWorker', {:client => 'Joe'}, {:start_at => Time.now + 3600, :run_every =>60, :priority => 0, :run_times => 100, :end_at: Time.now + 2592000, Time.now + 84600})
|
607
614
|
puts schedule.id
|
608
615
|
```
|
609
616
|
|
data/bin/iron_worker
CHANGED
@@ -184,6 +184,11 @@ elsif command == 'queue' || command == 'schedule'
|
|
184
184
|
options[:cluster] = v
|
185
185
|
end
|
186
186
|
|
187
|
+
desc = command == 'queue' ? 'task' : 'schedule'
|
188
|
+
opts.on('--label LABEL', String, "Label #{desc} with given name") do |v|
|
189
|
+
options[:label] = v
|
190
|
+
end
|
191
|
+
|
187
192
|
if command == 'queue'
|
188
193
|
opts.on('--wait', Integer, 'wait for task to complete and print log') do |v|
|
189
194
|
options[:wait] = true
|
@@ -211,9 +216,6 @@ elsif command == 'queue' || command == 'schedule'
|
|
211
216
|
options[:run_every] = v
|
212
217
|
end
|
213
218
|
|
214
|
-
opts.on('--label LABEL', String, 'Label schedule with given name') do |v|
|
215
|
-
options[:label] = v
|
216
|
-
end
|
217
219
|
end
|
218
220
|
|
219
221
|
common_opts(opts)
|
data/lib/iron_worker_ng/cli.rb
CHANGED
@@ -294,6 +294,7 @@ module IronWorkerNG
|
|
294
294
|
data << ['code package', task.code_name]
|
295
295
|
data << ['code revision', task.code_rev]
|
296
296
|
data << ['status', task.status]
|
297
|
+
data << ['label', task.label] if task.label
|
297
298
|
data << ['priority', task.priority || 2]
|
298
299
|
data << ['queued', parse_time(task.created_at) || '-']
|
299
300
|
data << ['started', parse_time(task.start_time) || '-']
|
@@ -179,7 +179,7 @@ module IronWorkerNG
|
|
179
179
|
@full_remote_build = true
|
180
180
|
end
|
181
181
|
|
182
|
-
def runtime(runtime = nil)
|
182
|
+
def runtime(runtime = nil, version = nil)
|
183
183
|
return @runtime unless runtime
|
184
184
|
|
185
185
|
unless @runtime.nil?
|
@@ -189,6 +189,12 @@ module IronWorkerNG
|
|
189
189
|
runtime_module = nil
|
190
190
|
runtime = runtime.to_s
|
191
191
|
|
192
|
+
if version
|
193
|
+
s = "#{runtime}-#{version}"
|
194
|
+
IronCore::Logger.info 'IronWorkerNG', "Trying to set stack to:#{s}'"
|
195
|
+
stack(s)
|
196
|
+
end
|
197
|
+
|
192
198
|
begin
|
193
199
|
runtime_module = IronWorkerNG::Code::Runtime.const_get(runtime.capitalize)
|
194
200
|
rescue
|
@@ -1,6 +1,6 @@
|
|
1
|
-
require 'zip
|
1
|
+
require 'zip'
|
2
2
|
|
3
|
-
Zip.
|
3
|
+
Zip.continue_on_exists_proc = true
|
4
4
|
|
5
5
|
module IronWorkerNG
|
6
6
|
module Code
|
@@ -10,7 +10,7 @@ module IronWorkerNG
|
|
10
10
|
super
|
11
11
|
|
12
12
|
@name = @name + '.zip'
|
13
|
-
@zip = ::Zip::
|
13
|
+
@zip = ::Zip::File.open(@name, ::Zip::File::CREATE)
|
14
14
|
end
|
15
15
|
|
16
16
|
def add(dest, src)
|
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: 1.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Kirilenko
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-12-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: iron_core
|
@@ -43,16 +43,16 @@ dependencies:
|
|
43
43
|
name: rubyzip
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- -
|
46
|
+
- - ">="
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: 0.
|
48
|
+
version: 1.0.0
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- -
|
53
|
+
- - ">="
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: 0.
|
55
|
+
version: 1.0.0
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: test-unit
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|