iron_worker_ng 0.1.3 → 0.1.4

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
data/bin/iron_worker_ng CHANGED
@@ -182,9 +182,9 @@ elsif command == 'tasks.log'
182
182
  task_id = v
183
183
  end
184
184
 
185
- #opts.on('--live', 'live log session') do |v|
186
- # live = true
187
- #end
185
+ opts.on('--live', 'live log session') do |v|
186
+ live = true
187
+ end
188
188
  end
189
189
 
190
190
  begin
@@ -200,6 +200,7 @@ elsif command == 'tasks.log'
200
200
  end
201
201
 
202
202
  log = ''
203
+
203
204
  if live
204
205
  begin
205
206
  log = client.tasks.log(task_id)
@@ -212,10 +213,8 @@ elsif command == 'tasks.log'
212
213
  print log
213
214
 
214
215
  if live
215
- status = client.tasks.get(task_id).status
216
-
217
- while status == 'queued' || status == 'running'
218
- if status == 'running'
216
+ client.tasks.wait_for(task_id) do |task|
217
+ if task.status == 'running'
219
218
  begin
220
219
  next_log = client.tasks.log(task_id)
221
220
  print next_log[log.length .. - 1]
@@ -223,10 +222,6 @@ elsif command == 'tasks.log'
223
222
  rescue IronWorkerNG::APIClientError
224
223
  end
225
224
  end
226
-
227
- sleep 1
228
-
229
- status = client.tasks.get(task_id).status
230
225
  end
231
226
 
232
227
  begin
@@ -113,6 +113,10 @@ module IronWorkerNG
113
113
  parse_response(post("projects/#{@project_id}/tasks/#{id}/cancel"))
114
114
  end
115
115
 
116
+ def tasks_cancel_all(code_id)
117
+ parse_response(post("projects/#{@project_id}/codes/#{code_id}/cancel_all"))
118
+ end
119
+
116
120
  def tasks_log(id)
117
121
  parse_response(get("projects/#{@project_id}/tasks/#{id}/log"), false)
118
122
  end
@@ -34,6 +34,14 @@ module IronWorkerNG
34
34
  end
35
35
  end
36
36
 
37
+ def codes_list(params = {})
38
+ @api.codes_list(params)['codes'].map { |c| OpenStruct.new(c) }
39
+ end
40
+
41
+ def codes_get(code_id)
42
+ OpenStruct.new(@api.codes_get(code_id))
43
+ end
44
+
37
45
  def codes_create(code)
38
46
  zip_file = code.create_zip
39
47
  @api.codes_create(code.name, zip_file, code.runtime, code.runner)
@@ -42,6 +50,28 @@ module IronWorkerNG
42
50
  true
43
51
  end
44
52
 
53
+ def codes_delete(code_id)
54
+ @api.codes_delete(code_id)
55
+
56
+ true
57
+ end
58
+
59
+ def codes_revisions(code_id, params = {})
60
+ @api.codes_revisions(code_id, params)['revisions'].map { |c| OpenStruct.new(c) }
61
+ end
62
+
63
+ def codes_download(code_id, params = {})
64
+ @api.codes_download(code_id, params)
65
+ end
66
+
67
+ def tasks_get(task_id)
68
+ OpenStruct.new(@api.tasks_get(task_id))
69
+ end
70
+
71
+ def tasks_list(params = {})
72
+ @api.tasks_list(params)['tasks'].map { |t| OpenStruct.new(t) }
73
+ end
74
+
45
75
  def tasks_get(task_id)
46
76
  OpenStruct.new(@api.tasks_get(task_id))
47
77
  end
@@ -52,14 +82,57 @@ module IronWorkerNG
52
82
  OpenStruct.new(res['tasks'][0])
53
83
  end
54
84
 
85
+ def tasks_cancel(task_id)
86
+ @api.tasks_cancel(task_id)
87
+
88
+ true
89
+ end
90
+
91
+ def tasks_cancel_all(code_id)
92
+ @api.tasks_cancel_all(code_id)
93
+
94
+ true
95
+ end
96
+
55
97
  def tasks_log(task_id)
56
98
  @api.tasks_log(task_id)
57
99
  end
58
100
 
101
+ def tasks_set_progress(task_id, params = {})
102
+ @api.tasks_set_progress(task_id, params)
103
+
104
+ true
105
+ end
106
+
107
+ def tasks_wait_for(task_id, params = {})
108
+ params[:sleep] ||= 5
109
+
110
+ task = tasks_get(task_id)
111
+ while task.status == 'queued' || task.status == 'running'
112
+ yield task if block_given?
113
+ sleep params[:sleep]
114
+ task = tasks_get(task_id)
115
+ end
116
+ end
117
+
118
+ def schedules_list(params = {})
119
+ @api.schedules_list(params)['schedules'].map { |s| OpenStruct.new(s) }
120
+ end
121
+
122
+ def schedules_get(schedule_id)
123
+ OpenStruct.new(@api.schedules_get(schedule_id))
124
+ end
125
+
59
126
  def schedules_create(code_name, params = {}, options = {})
60
127
  res = @api.schedules_create(code_name, {:project_id => @api.project_id, :token => @api.token, :params => params}.to_json, options)
61
128
 
62
129
  OpenStruct.new(res['schedules'][0])
63
130
  end
131
+
132
+ def schedules_cancel(schedule_id)
133
+ @api.schedules_cancel(schedule_id)
134
+
135
+ true
136
+ end
64
137
  end
65
138
  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.1.3
4
+ version: 0.1.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-02-23 00:00:00.000000000 Z
13
+ date: 2012-02-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: zip
17
- requirement: &83479100 !ruby/object:Gem::Requirement
17
+ requirement: &71964750 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *83479100
25
+ version_requirements: *71964750
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rest-client
28
- requirement: &83478800 !ruby/object:Gem::Requirement
28
+ requirement: &71964290 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *83478800
36
+ version_requirements: *71964290
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rest
39
- requirement: &83302470 !ruby/object:Gem::Requirement
39
+ requirement: &71963650 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *83302470
47
+ version_requirements: *71963650
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: json
50
- requirement: &83301960 !ruby/object:Gem::Requirement
50
+ requirement: &72040590 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *83301960
58
+ version_requirements: *72040590
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: bundler
61
- requirement: &83301580 !ruby/object:Gem::Requirement
61
+ requirement: &72039740 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ~>
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 1.0.0
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *83301580
69
+ version_requirements: *72039740
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: jeweler
72
- requirement: &83301220 !ruby/object:Gem::Requirement
72
+ requirement: &72039180 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -77,7 +77,7 @@ dependencies:
77
77
  version: 1.8.3
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *83301220
80
+ version_requirements: *72039180
81
81
  description: New generation ruby client for IronWorker
82
82
  email: info@iron.io
83
83
  executables:
@@ -123,7 +123,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
123
123
  version: '0'
124
124
  segments:
125
125
  - 0
126
- hash: -801788643
126
+ hash: 498540403
127
127
  required_rubygems_version: !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements: