Sha256: f3465dd22f284ac634450340901c06bc7631adfabd4a80b5c74793367d7a73fd
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
module Nucleon module Action module Node class Lookup < CORL.plugin_class(:nucleon, :cloud_action) include Mixin::Action::Registration #----------------------------------------------------------------------------- # Info def self.describe super(:node, :lookup, 565) end #----------------------------------------------------------------------------- # Settings def configure super do register :properties, :array, [] register :context, :str, :priority do |value| success = true options = [ :priority, :array, :hash ] unless options.include?(value.to_sym) warn('corl.actions.lookup.errors.context', { :value => value, :options => options.join(', ') }) success = false end success end register_translator :format, :json end end #--- def arguments [ :properties ] end #----------------------------------------------------------------------------- # Operations def execute super do |node, network| ensure_node(node) do translator = CORL.translator({}, settings[:format]) if settings[:properties].empty? myself.result = node.hiera_configuration(node.facts) $stderr.puts translator.generate(result) else properties = {} settings.delete(:properties).each do |property| properties[property] = node.lookup(property, nil, settings) end $stderr.puts translator.generate(properties) myself.result = properties end end end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
corl-0.5.1 | lib/nucleon/action/node/lookup.rb |