iron_worker_ng 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
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: