Module: HammerCLIForemanPuppet::PuppetIdResolver
- Defined in:
- lib/hammer_cli_foreman_puppet/id_resolver.rb
Instance Method Summary collapse
- #create_smart_class_parameters_search_options(options, _mode = nil) ⇒ Object
- #puppet_environment_id(options) ⇒ Object
- #puppet_environment_ids(options) ⇒ Object
-
#puppetclass_id(options) ⇒ Object
puppet class search results are in non-standard format and needs to be un-hashed first.
- #puppetclass_ids(options) ⇒ Object
Instance Method Details
#create_smart_class_parameters_search_options(options, _mode = nil) ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/hammer_cli_foreman_puppet/id_resolver.rb', line 44 def (, _mode = nil) = {} value = [HammerCLI.option_accessor_name('name')] [:search] = "key = \"#{value}\"" [:puppetclass_id] = puppetclass_id(('puppetclass', )) end |
#puppet_environment_id(options) ⇒ Object
36 37 38 |
# File 'lib/hammer_cli_foreman_puppet/id_resolver.rb', line 36 def puppet_environment_id() get_id(:environments, ) end |
#puppet_environment_ids(options) ⇒ Object
40 41 42 |
# File 'lib/hammer_cli_foreman_puppet/id_resolver.rb', line 40 def puppet_environment_ids() get_ids(:environments, ) end |
#puppetclass_id(options) ⇒ Object
puppet class search results are in non-standard format and needs to be un-hashed first
5 6 7 8 9 10 11 12 13 |
# File 'lib/hammer_cli_foreman_puppet/id_resolver.rb', line 5 def puppetclass_id() return [HammerCLI.option_accessor_name('id')] if [HammerCLI.option_accessor_name('id')] resource = @api.resource(:puppetclasses) results = find_resource_raw(:puppetclasses, ) require('hammer_cli_foreman_puppet/class') results = HammerCLIForemanPuppet::PuppetClass::ListCommand.unhash_classes(results) pick_result(results, resource)['id'] end |
#puppetclass_ids(options) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/hammer_cli_foreman_puppet/id_resolver.rb', line 15 def puppetclass_ids() resource_name = :puppetclasses resource = @api.resource(resource_name) results = if (ids = [HammerCLI.option_accessor_name("ids")]) ids elsif (ids = nil_from_searchables(resource_name, , :plural => true)) ids elsif (resource, ) raise HammerCLIForeman::MissingSearchOptions.new(_("Missing options to search %s") % resource.name, resource) elsif (resource, ) [] else require('hammer_cli_foreman_puppet/class') results = HammerCLIForemanPuppet::PuppetClass::ListCommand.unhash_classes( resolved_call(resource_name, :index, , :multi) ) raise HammerCLIForeman::ResolverError.new(_("one of %s not found.") % resource.name, resource) if results.count < expected_record_count(, resource, :multi) results.map { |r| r['id'] } end end |