maestro_plugin 0.0.16 → 0.0.17
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/README.md +2 -0
- data/lib/maestro_plugin/maestro_worker.rb +46 -0
- data/lib/maestro_plugin/version.rb +1 -1
- metadata +2 -2
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
Maestro Ruby Plugin Gem
|
2
2
|
=======================
|
3
|
+
[](http://badge.fury.io/rb/maestro_plugin)
|
4
|
+
[](https://codeclimate.com/github/maestrodev/maestro-ruby-plugin)
|
3
5
|
|
4
6
|
Library For Creating Ruby Based Maestro Plugins
|
5
7
|
=======
|
@@ -318,6 +318,16 @@ module Maestro
|
|
318
318
|
value = default if !default.nil? && (value.nil? || (value.respond_to?(:empty?) && value.empty?))
|
319
319
|
value
|
320
320
|
end
|
321
|
+
|
322
|
+
# Helper that renders a field as an int
|
323
|
+
def get_int_field(field, default = 0)
|
324
|
+
as_int(get_field(field), default)
|
325
|
+
end
|
326
|
+
|
327
|
+
# Helper that renders a field as a boolean
|
328
|
+
def get_boolean_field(field)
|
329
|
+
as_boolean(get_field(field))
|
330
|
+
end
|
321
331
|
|
322
332
|
def fields
|
323
333
|
workitem['fields']
|
@@ -336,6 +346,42 @@ module Maestro
|
|
336
346
|
fields[LINKS_META] << {'name' => name, 'url' => url}
|
337
347
|
end
|
338
348
|
|
349
|
+
# Field Utility methods
|
350
|
+
|
351
|
+
# Return numeric version of value
|
352
|
+
def as_int(value, default = 0)
|
353
|
+
res = default
|
354
|
+
|
355
|
+
if value
|
356
|
+
if value.is_a?(Fixnum)
|
357
|
+
res = value
|
358
|
+
elsif value.respond_to?(:to_i)
|
359
|
+
res = value.to_i
|
360
|
+
end
|
361
|
+
end
|
362
|
+
|
363
|
+
res
|
364
|
+
end
|
365
|
+
|
366
|
+
# Return boolean version of a value
|
367
|
+
def as_boolean(value)
|
368
|
+
res = false
|
369
|
+
|
370
|
+
if value
|
371
|
+
if value.is_a?(TrueClass) || value.is_a?(FalseClass)
|
372
|
+
res = value
|
373
|
+
elsif value.is_a?(Fixnum)
|
374
|
+
res = value != 0
|
375
|
+
elsif value.respond_to?(:to_s)
|
376
|
+
value = value.to_s.downcase
|
377
|
+
|
378
|
+
res = (value == 't' || value == 'true')
|
379
|
+
end
|
380
|
+
end
|
381
|
+
|
382
|
+
res
|
383
|
+
end
|
384
|
+
|
339
385
|
private
|
340
386
|
|
341
387
|
def send_workitem_message
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: maestro_plugin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.0.
|
5
|
+
version: 0.0.17
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Etienne Pelletier
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2013-08-
|
13
|
+
date: 2013-08-26 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: logging
|