Class: OpenvoxBootstrap::Task
- Inherits:
-
Object
- Object
- OpenvoxBootstrap::Task
- Defined in:
- lib/openvox_bootstrap/task.rb
Overview
Base class for openvox_bootstrap Ruby tasks.
Class Method Summary collapse
-
.run ⇒ Object
Run the task and print the result as JSON.
Class Method Details
.run ⇒ Object
Run the task and print the result as JSON.
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/openvox_bootstrap/task.rb', line 9 def self.run params = JSON.parse($stdin.read) raise(ArgumentError, <<~ERR) unless params.is_a?(Hash) Expected a Hash, got #{params.class}: #{params.inspect} ERR params.transform_keys!(&:to_sym) # Clean out empty params so that task defaults are used. params.delete_if { |_, v| v.nil? || v == '' } result = new.task(**params) puts JSON.pretty_generate(result) result end |